05 2021 档案

摘要:1、HTTP协议介绍 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本(也可以说是资源)到本地浏览器的传送协议。 HTTP协议是基于TCP协议的应用层协议,它不关心数据在底层传输的 阅读全文
posted @ 2021-05-31 17:19 繁华似锦Fighting 阅读(1195) 评论(0) 推荐(3) 编辑
摘要:1、Fiddler简介 Fiddler是强大的抓包工具之一,它能记录所有客户端和服务器之间的HTTP和HTTPS请求,是web调试的利器。 Fiddler是位于客户端和服务端之间的HTTP代理,它的原理是以web代理服务器的形式进行工作的,使用的代理地址是:127.0.0.1,端口默认为8888,我 阅读全文
posted @ 2021-05-31 10:54 繁华似锦Fighting 阅读(935) 评论(2) 推荐(2) 编辑
摘要:1、函数助手介绍 在性能测试过程中,为了模拟真实的用户,往往我们需要让提交的表单内容每次都发生变化,这个过程叫做参数化。 JMeter中的配置元件与前置处理器都能帮助我们实现参数化,为了能够更好的帮助我们进行参数化,JMeter提供了一组函数来帮助我们生成需要的数据,这些函数在函数助手面板进行选择和 阅读全文
posted @ 2021-05-30 18:59 繁华似锦Fighting 阅读(1246) 评论(0) 推荐(1) 编辑
摘要:我们在使用JMeter进行测试的时候,测试数据是一项重要的准备工作,当每次迭代的数据不一样的时候,就需要进行参数化,也就是从参数化数据文件中来读取测试数据。 JMeter中的参数化方式有多种,我们之前讲过了使用CSV 数据文件设置组件,从.cvs和.txt文件中读取数据。 今天我们来说一下,使用函数 阅读全文
posted @ 2021-05-30 09:23 繁华似锦Fighting 阅读(983) 评论(0) 推荐(1) 编辑
摘要:之前我们都是使用.csv格式的数据文件实现了JMeter的参数化,今天我们演示使用.txt格式的数据文件实现JMeter的参数化。 需求:我们以一个登陆接口为例。 发送登录请求的时候,我们需要传递两个参数:phone和password。 针对这个登录接口设计5条用例,如下: 正常登录。 手机号未注册 阅读全文
posted @ 2021-05-29 09:40 繁华似锦Fighting 阅读(654) 评论(0) 推荐(0) 编辑
摘要:我们本篇文章演示在请求中,以Json形式的数据格式,实现JMeter参数化。 我们以小项目学院管理系统为例,下载地址:点击下载,里面有详细的启动配置说明和API接口文档。 接口文档如下: 学院-新增 1) 请求方法:POST 2) 请求地址:http://127.0.0.1:8000/api/dep 阅读全文
posted @ 2021-05-28 10:04 繁华似锦Fighting 阅读(468) 评论(0) 推荐(0) 编辑
摘要:1、用户参数组件介绍 用户参数(User Parameter)组件在前置处理器元件中添加,前置处理器的作用是在取样器发出请求之前,执行一些操作。 即:如果将前置处理器附加到取样器元件中,则它将在该取样器元件运行之前执行。常用操作如:取样器参数设置、环境变量设置、脚本预处理等。 之前我们介绍过,JMe 阅读全文
posted @ 2021-05-27 17:54 繁华似锦Fighting 阅读(621) 评论(0) 推荐(0) 编辑
摘要:前面向大家介绍了Postman的用法,我们发现这些操作都离不开Postman 的客户端,我们知道服务器一般都是Linux系统,那么如何在Linux系统下运行我们的Postman测试集脚本(json文件)呢,谷歌公司为了解决这个问题,引入了 NewMan工具。 1、NewMan工具的介绍 Newman 阅读全文
posted @ 2021-05-27 10:54 繁华似锦Fighting 阅读(1549) 评论(2) 推荐(1) 编辑
摘要:1、用户自定义变量介绍 我们可以看到前面一篇文章的例子中,数据文件login_data.csv的后三个参数都是一样的,我们可以把这些变量提取出来,放在一个公共的位置,方便我们随时提取。(凡是可以输入的位置,都可以使用参数化变量) 在JMeter中,有两个地方可以设置这种公共的变量: 一种是在“测试计 阅读全文
posted @ 2021-05-26 17:37 繁华似锦Fighting 阅读(909) 评论(2) 推荐(1) 编辑
摘要:1、参数化的定义 参数化是自动化测试脚本的一种常用技巧,可将脚本中的某些参数使用变量来代替。例如登录操作时,利用GET/POST请求方式传递参数的场景,可在脚本运行时指定参数的取值范围和规则。 脚本在运行时,根据需要选取不同的参数值作为输入,该方式称为数据驱动测试(Data Driven Test) 阅读全文
posted @ 2021-05-26 09:24 繁华似锦Fighting 阅读(1357) 评论(1) 推荐(0) 编辑
摘要:上一篇文章详细的介绍了HTTP Cookie管理器的作用和内容,本篇文章详细的说明一下使用。 我们使用一个电商项目进行演示,在调用登录接口完成登录之后,通过查看购物车接口获取该用户购物车中的信息。也就是说如果需要查看到购物车中的信息,则我们先要是登陆状态,这样的情况下,就需要有Cookie信息的存在 阅读全文
posted @ 2021-05-25 15:30 繁华似锦Fighting 阅读(992) 评论(0) 推荐(0) 编辑
摘要:1、HTTP Cookie管理器介绍 在接口测试中,某些接口的调用,需要带入已有Cookie,比如有些接口需要登陆后才能访问。 JMeter接口请求中使用Cookie有如下两种方式: 直接在HTTP信息头管理器组件中添加Cookie头域信息,适用于已经知道请求所用Cookie数据的情况。 使用JMe 阅读全文
posted @ 2021-05-25 09:11 繁华似锦Fighting 阅读(1468) 评论(0) 推荐(0) 编辑
摘要:接口测试项目实例网址:http://www.testingedu.com.cn:8081/inter/index.html。 接口简略说明: 鉴权接口:http://www.testingedu.com.cn:8081/inter/HTTP/auth 该接口返回一个token值,之后的所有接口请求均 阅读全文
posted @ 2021-05-24 11:22 繁华似锦Fighting 阅读(1406) 评论(0) 推荐(1) 编辑
摘要:Postman的数据驱动,也可以叫做参数化。 1、什么是数据驱动? 我们在执行测试用例的过程,本质上是执行的不同数据。因此我们的测试是输入不同数据,并执行查看接口返回结果的过程。 所以我们可以在计算机中,使用预先设定好的数据文件,来批量执行测试用例,实现覆盖测试点。 这个过程就叫做数据驱动。 2、测 阅读全文
posted @ 2021-05-24 09:26 繁华似锦Fighting 阅读(820) 评论(0) 推荐(0) 编辑
摘要:1、随机变量介绍 随机变量应用场景:在一些数据要求不重复,或者对数据取值需要正态分布的时候,我们可以采用随机变量组件来满足需求。 随机变量与用户自定义变量的区别: 随机变量(random variable):在线程每个次循环执行时,取值都会重新生成。 用户自定义变量(User defined var 阅读全文
posted @ 2021-05-23 15:52 繁华似锦Fighting 阅读(1785) 评论(0) 推荐(0) 编辑
摘要:1、计数器介绍 如果需要引用的数据量较大,且要求不能重复或者需要自增,那么可以使用计数器组件来实现。 计数器组件中的数据,允许在一个线程组之内都可以被引用。 2、计数器界面详解 添加计数器组件的操作:选中“线程组”右键 —> 添加 —> 配置元件 —> 计数器。 计数器界面如下: 计数器组件的详细说 阅读全文
posted @ 2021-05-23 09:00 繁华似锦Fighting 阅读(759) 评论(0) 推荐(1) 编辑
摘要:1、HTTP请求默认值介绍 我们在JMeter中编辑测试计划时,如果有多个Sampler(取样器)请求中,参数和设置都是相同的,例如请求服务的IP地址、协议、端口号等,这些信息重复的配置在每个Sampler中,就会增加重复工作量和冗余度,如果以后项目服务器地址发生改变,修改起来也是非常麻烦的。 HT 阅读全文
posted @ 2021-05-22 15:44 繁华似锦Fighting 阅读(426) 评论(0) 推荐(0) 编辑
摘要:JMeter提供了丰富的配置元件,常用的包括参数化配置元件、HTTP请求默认值、HTTP信息头管理器、计数器等,这些配置元件用于设置默认值和变量,提供给后面的sampler(取样器)使用。 提示:本文同时演示了,使用消息体数据选项页,配置Post请求的参数。 1、用于演示的项目说明 我们使用JMet 阅读全文
posted @ 2021-05-22 09:29 繁华似锦Fighting 阅读(1396) 评论(1) 推荐(2) 编辑
摘要:在上一篇文章【使用JMeter发送Post请求】中,我们只介绍了在参数选项页中添加数据,并且使用了两种提交数据类型application/x-www-form-urlencoded和multipart/form-data进行演示。 这篇文章我们说明如何使用文件上传选项页,实现Post请求上传文件。 阅读全文
posted @ 2021-05-21 16:06 繁华似锦Fighting 阅读(1625) 评论(0) 推荐(0) 编辑
摘要:1、Post请求参数类型说明 在Post请求中,更重要的是参数类型。不同请求的参数形式是不一样的,在JMeter中的存在形式也是不一样的。 Post请求的数据类型包括: form-data:以键值对的方式提交数据。 对于一段utf8编码的字节的数据,直接将utf8编码字节的拼接到请求体中,在本地有多 阅读全文
posted @ 2021-05-21 09:34 繁华似锦Fighting 阅读(1894) 评论(0) 推荐(0) 编辑
摘要:1、Httpbin服务介绍 Httpbin是使用Python + Flask语言编写的一个HTTP Request & Response Service的简单服务,该服务主要用于测试 HTTP 请求,你可以向他发送请求,然后他会按照指定的规则将你的请求返回(查看你所发送请求中的全部请求信息和响应信息 阅读全文
posted @ 2021-05-20 10:40 繁华似锦Fighting 阅读(2064) 评论(0) 推荐(1) 编辑
摘要:POST请求用于向服务器提交数据,比如提交一个表单新建一个用户、或修改一个用户信息等操作。 对于POST请求,我们可以通过浏览器开发者工具或者其他外部工具来进行抓包,得到请求的URL、请求头(request headers)以及请求的表单data信息,这三样恰恰是我们用Requests库模拟POST 阅读全文
posted @ 2021-05-19 10:52 繁华似锦Fighting 阅读(1320) 评论(3) 推荐(1) 编辑
摘要:上一篇文章说明了Postman中关于Cookie的相关操作,还是以Cookie举例,来说明下一在Postman中测试关联接口。 1、关联接口说明 例如:有可能存在部分任务场景,或者部分API接口必须登录后才能访问。 设想一下,现在后端基本都是热更新框架,每次热更新都会清除Session,边开发边测试 阅读全文
posted @ 2021-05-18 12:19 繁华似锦Fighting 阅读(804) 评论(0) 推荐(2) 编辑
摘要:Requests库GET请求是使用HTTP协议中的GET请求方式对目标网站发起请求。 (不带参数的GET请求请看上一篇文章的练习) 1、使用Requests库发送带参数的GET请求 使用Get请求方式发送带参数请求时,是params=参数字典,而不是data=参数字典。data=参数字典是Post请 阅读全文
posted @ 2021-05-18 10:49 繁华似锦Fighting 阅读(482) 评论(0) 推荐(0) 编辑
摘要:1、Requests库 Requests库是用Python语言编写,基于urllib3模块,采用Apache2 Licensed开源协议的 HTTP 库。 虽然Python的标准库中urllib3模块已经包含了平常我们使用的大多数功能,但是它的 API使用起来让人感觉不太友好。而Requests库使 阅读全文
posted @ 2021-05-17 10:10 繁华似锦Fighting 阅读(705) 评论(0) 推荐(1) 编辑
摘要:1、接口的概念 接口又叫API,全称application programming interface:应用程序接口(规范),也就是我们经常会听说Web接口,APP接口。 详细说明: APP是一种基于C/S架构的应用程序,如抖音、微信等。完整的体验是基于APP客户端和后台云服务端共同作用的结果。 客 阅读全文
posted @ 2021-05-16 11:10 繁华似锦Fighting 阅读(506) 评论(0) 推荐(3) 编辑
摘要:1、接口测试概念 接口测试是测试系统组件间接口的一种测试,它界于单元测试与系统测试中间。 接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。 测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。 换句话说,接口测试就是开发人员把这个接口实现了,我们需 阅读全文
posted @ 2021-05-15 18:07 繁华似锦Fighting 阅读(747) 评论(0) 推荐(2) 编辑
摘要:在接口测试中,某些接口的调用,需要带入已有Cookie,比如有些接口需要登陆后才能访问。 Postman接口请求使用Cookie有如下两种方式: 1、直接在头域中添加Cookie头域,适用于已经知道请求所用Cookie数据的情况。 2、使用Postman的Cookie管理机制,既可以手动添加,同时P 阅读全文
posted @ 2021-05-14 11:19 繁华似锦Fighting 阅读(1289) 评论(0) 推荐(0) 编辑
摘要:我们检验一个测试用例是否通过,一般会将我们心理预期的结果与实际结果进行比对,如果结果一致则证明测试通过,如果结果不一致,则证明测试不通过,这即是我们经常所说的断言。 1、Tests的介绍 Postman中的断言是使用请求后脚本Tests,是对状态码、响应头、响应正文等信息进行断言操作。 在Postm 阅读全文
posted @ 2021-05-13 10:15 繁华似锦Fighting 阅读(961) 评论(0) 推荐(2) 编辑
摘要:Postman测试沙箱其实是结合JS脚本和内置断言函数,来完成测试中的断言功能,在请求发起前后实现部分测试操作。 常用功能: 请求前脚本(pre-request scripts)设置请求前置操作如设置变吊等。 请求后脚本(tests)对状态码、响应头、响应正文等信息进行断言操作。 1、Pre-req 阅读全文
posted @ 2021-05-12 17:13 繁华似锦Fighting 阅读(2153) 评论(0) 推荐(3) 编辑
摘要:1、演示说明 我们在之前的文章中使用JMeter发送一个最基础的请求,已经使用JMeter发送了一个Get请求,并且介绍了使用JMeter发送一个最基础请求需要的四个要素。 测试计划要素如下: 要素一:脚本中要有一个测试计划,且只能有一个JMeter测试计划。(换种说法,一个测试计划就生成一个JMe 阅读全文
posted @ 2021-05-11 17:58 繁华似锦Fighting 阅读(1271) 评论(13) 推荐(1) 编辑
摘要:1、创建Collection 在保存Request请求之前,先创建一个Collection(集合),我们需要把Request请求存放到Collection。 这里方便我们对Request请求的管理。 如下图: 进入Collection创建页面 关于Description、Authorization、 阅读全文
posted @ 2021-05-11 16:53 繁华似锦Fighting 阅读(1528) 评论(2) 推荐(0) 编辑
摘要:1、取样器介绍 取样器是用来模拟用户操作的,向服务器发送请求以及接收服务器的响应数据。 取样器是在线程组内部的元件,也就是说取样器只能在线程组中添加。 取样器(Sampler)是性能测试中向服务器发送请求,记录响应信息,记录响应时间的最小单元。(取样器通常要进行这三个工作) 2、JMeter自带的取 阅读全文
posted @ 2021-05-10 12:25 繁华似锦Fighting 阅读(2591) 评论(0) 推荐(2) 编辑
摘要:PostMan是一套比较方便的接口测试工具,但我们在使用过程中,可能会出现创建了API请求,但API的URL会随着服务器IP地址的变化而改变。 这样的情况下,如果每一个API都重新修改URL的话那将是非常的麻烦,所以PostMan中也提供环境变量的设置。 我们在PostMan的右上角可以设定当前的环 阅读全文
posted @ 2021-05-09 18:21 繁华似锦Fighting 阅读(853) 评论(0) 推荐(0) 编辑
摘要:线程(用户)就是我们通常要添加运行的线程。通俗的讲,一个线程组可以看做一个虚拟用户组,线程组中的每个线程都可以理解为一个虚拟用户。 线程组中包含的线程数量在测试执行过程中是不会发生改变的。每个线程完全独立的运行测试计划,互不干扰,多个线程用于模仿对服务器的并发访问。 所有控制器和采样器必须在线程组下 阅读全文
posted @ 2021-05-09 17:04 繁华似锦Fighting 阅读(1107) 评论(0) 推荐(1) 编辑
摘要:1、测试计划概述 测试计划用来描述一个性能测试,包含性能测试所有相关的功能。换句话来说,进行一次性能测试的所有内容都是基于一个测试计划中。 JMeter中一个脚本就是一个测试计划(Test Plan),也是一个管理单元。JMeter的请求模拟与并发数设置都在脚本文件中一起设置。(并发数就是设置线程数 阅读全文
posted @ 2021-05-09 13:34 繁华似锦Fighting 阅读(699) 评论(0) 推荐(1) 编辑
摘要:1、JMeter的运行方式 接触过LoadRunner的朋友应该知道, LoadRunner可以选择是以进程方式还是以线程方式来运行,而在JMeter中是以线程的方式运行的。 由于JMeter是运行在JVM虚拟机上的, 每个进程的开销比LoadRunner的进程开销要大,如果以进程的方式来运行的话, 阅读全文
posted @ 2021-05-09 12:14 繁华似锦Fighting 阅读(641) 评论(0) 推荐(1) 编辑
摘要:JMeter的主要元件有测试计划、线程组、取样器、逻辑控制器、配置元件、前置处理器、后置处理器、监听器、定时器、断言。 其中共有8类可被执行的元件,test plan(测试计划)和thread group(线程组)不属于可被执行的元件,而sampler(取样器)是不与其他元件发生交互的作用的元件。 阅读全文
posted @ 2021-05-08 21:38 繁华似锦Fighting 阅读(1004) 评论(0) 推荐(4) 编辑
摘要:我都知道.Properties文件一般都为配置文件。我们可以通过在.Properties文件中定义的各类属性来实现一些特定的配置。例如:语言类型的问题、cookie的问题、输出日志类型的问题、定义日志级别的问题、编码问题等等。 在JMeter的bin目录中,存在多个配置文件(5.0版本): jmet 阅读全文
posted @ 2021-05-08 10:53 繁华似锦Fighting 阅读(1549) 评论(1) 推荐(3) 编辑
摘要:1、发送Get请求 (1)无参数的get请求 无参数的Get请求直接输入请求地址就可以了,然后点击send进行发送请求。 示例1 接口:学院-查询所有学院 请求方法:GET 请求地址:http://127.0.0.1:8000/api/departments/ 示例2 接口:学院-查询指定学院(注: 阅读全文
posted @ 2021-05-07 14:14 繁华似锦Fighting 阅读(1030) 评论(0) 推荐(1) 编辑
摘要:一般来说,所有的HTTP Request都有最基础的4个部分组成:URL、 Method、 Headers和body。 1、Method 要选择Request的Method是很简单的,Postman支持所有的请求方式。 2、URL 要组装一条Request(请求), URL永远是你首先要填的内容。在 阅读全文
posted @ 2021-05-07 13:54 繁华似锦Fighting 阅读(1086) 评论(0) 推荐(1) 编辑
摘要:当我们第一次打开JMeter的时候,树形标签栏中只有一个“测试计划”。 如果想要发送一个最基础的请求,需要操作如下步骤: 步骤1:创建一个测试计划 打开JMeter会默认有一个创建好的测试计划。 一个测试计划描述了一系列JMeter运行时要执行的步骤。一个完整的测试计划包含一个或者多个线程组,逻辑控 阅读全文
posted @ 2021-05-06 22:50 繁华似锦Fighting 阅读(1159) 评论(0) 推荐(1) 编辑
摘要:(一)RESTful架构风格特点 1、统一接口风格 http://服务器地址:端口号[/项目名称/版本/资源] http://:为我们HTTP协议的访问头标准。 服务器地址:为我们项目服务器IP地址。 端口号:为我们服务器内项目访问的指定编号。 [/项目名称/版本] :可选 。 资源:互联网-图片、 阅读全文
posted @ 2021-05-06 16:06 繁华似锦Fighting 阅读(528) 评论(0) 推荐(1) 编辑
摘要:进入Postman的主界面(如下图),我们接下来分别介绍一下Postman主界面的主要几个区域,以及每个区域的功能是什么。 1、Postman菜单栏 Postman顶部菜单栏,如下图所示: ###(1)File 菜单 New 选项:提供创建请求、集合、环境、文档、mock服务器和监控器的入口。 Ne 阅读全文
posted @ 2021-05-06 15:44 繁华似锦Fighting 阅读(1288) 评论(0) 推荐(1) 编辑
摘要:一、Postman介绍 Postman是一款非常流行的HTTP接口测试工具,是Google开发的一款功能强大的网页调试与发送网页HTTP请求,并能运行测试用例的的Chrome插件。 Postman分为Postman native app和Postman Chrome app两个版本。 在2018年的 阅读全文
posted @ 2021-05-06 14:58 繁华似锦Fighting 阅读(960) 评论(4) 推荐(2) 编辑
摘要:在介绍JMeter主页面布局的菜单栏和图标之前,我们可以把语言切换为简体中文,如下图所示: JMeter的主界面布局分为标题栏、菜单栏、工具栏、树形标签栏和内容栏,如下图所示: 接下来我们来逐一说明。 1、标题栏 标题栏主要显示计划信息及JMeter版本。 (当我们打开某一个文件的时候,还会显示该文 阅读全文
posted @ 2021-05-05 21:01 繁华似锦Fighting 阅读(919) 评论(0) 推荐(1) 编辑
摘要:在正式使用JMeter之前,建议大家还是先了解JMeter的常见的目录结构。了解一下这些东西以后,才能快速的找到需要的某些配置文件来进行修改。 我们之前下载的是JMeter5.0版本,解压后得到下面的目录结果,如下图: 1、bin目录 bin目录存放的是Jmeter的主jar包,启动脚本、配置文件、 阅读全文
posted @ 2021-05-05 20:40 繁华似锦Fighting 阅读(1063) 评论(0) 推荐(1) 编辑
摘要:JMeter是一个Java开发的开源软件,开源的软件有一个好处,就是会有很多第三方开发出来的插件,使得JMeter在处理某一些功能的时候更加的方便。并且这些插件拿过来就可以使用,完全免费的。 我们安装好的JMeter,自身会携带一些必须的组件,一般来说是符合我们平时工作需要的,但是有些功能或者组件, 阅读全文
posted @ 2021-05-05 18:41 繁华似锦Fighting 阅读(1590) 评论(3) 推荐(1) 编辑
摘要:1、安装Java环境 由于JMeter是纯Java的桌面应用程序,因此它的运行环境需要Java环境,即需要安装JDK或JRE。(也就是安装JDK环境) 步骤简要说明: 下载并安装JDK 配置环境变量 详细说明可以参考之前的文章:https://blog.csdn.net/Liuyuelinjiayo 阅读全文
posted @ 2021-05-05 17:58 繁华似锦Fighting 阅读(728) 评论(0) 推荐(2) 编辑
摘要:1、什么是JMeter Apache JMeter是Apache组织开发的基于Java的压力测试工具,用于对软件做压力测试。它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 (Apache JMeter是100%纯JAVA桌面应用程序) Apache JMeter可以用于对静态和动态资源( 阅读全文
posted @ 2021-05-05 17:26 繁华似锦Fighting 阅读(1048) 评论(1) 推荐(2) 编辑