章节9 Jmeter接口测试实战

课时84 之前内容回顾

章节9 Jmeter接口测试实战_第1张图片

课时85 jmeter的介绍

jmeter需要java环境支持,最好是java1.8以上,jre就可以。它是由java语言开发的。

我们这次学习jmeter4.0

1、学习到很丰富的插件

2、很全面的测试报告

3、轻量级的

4、开源的(阿里等大公司会进行2次开发,来适应自己需要)

5、功能测试,接口测试,性能测试都可以。

课时86 jmeter语言的切换

jmeter目录结构:

bin是可以执行文件的文件夹,在windows环境下,jmeter可执行文件是最重要的。另外jmeter.properties文件是配置jmeter的文件。jmeter.sh是在linux下执行,同样是启动jmeter。

docs是帮助文档,有空可以多看看。

extras里面的jmeter-results-detail-report_21 jmeter-results-report_21 ant-jmeter-1.1.1.jar 这3个文件会对我们后面要用到的测试报告生成有很大的关系。

lib就是jar包,需要注意的是其中还有个junit文件夹,用来做单元测试。

Tips:修改jmeter.properties使界面文字为中文。

课时87 插件的安装

由于一个个下载插件比较麻烦,所以可以先把官方的一个管理器jar包放到C:\apache-jmeter-5.0\lib\ext目录下,这样就有了自己的插件管理器。

这个文件是jmeter-plugins-manager,百度到官网下载。

必须的一些插件,使用管理器:

json、PerfMon、websocket

Jmeter的使用,首先添加1个线程组,线程组可以改名字,这里改为webservices,然后再在wevservices上,添加测试用例

章节9 Jmeter接口测试实战_第2张图片

课时88 http请求

章节9 Jmeter接口测试实战_第3张图片

主要学习:建立1个http请求,填入对应的请求方法,请求路径,以及请求参数。请求头需要在配置元件里添加。并进行数据的“包含”断言。

建立第2个请求,同样添加HTTP信息头管理器元件。

添加察看树,在监听器中添加。

添加“请求响应状态码”响应断言(可以改为自己想要的名称,比如我图中的),然后选择response headers,添加上“HTTP/1.1 200 OK”

课时89 HTTP的请求默认值实战

服务器ip以及端口号可以设定,然后把这个默认值拉到这个模块的顶部。这样每个请求都是请求统一ip,假如改变了ip或者端口,就不用一一修改。

章节9 Jmeter接口测试实战_第4张图片

课时90 动态参数的获取和变量的调用

动态参数(token)获取的两种方式:

章节9 Jmeter接口测试实战_第5张图片

章节9 Jmeter接口测试实战_第6张图片

这里的data是指响应的字符串里,有个字段是data。在data这个dict里面有token键。

当然,这里的data{'token},也可以用data.token来表示

当下面的请求接口需要用到token时,就可以用变量表示。

章节9 Jmeter接口测试实战_第7张图片

课时91 HTTP cookie管理器实战

章节9 Jmeter接口测试实战_第8张图片

当一个模块接口测试用例中,也许有多个请求都会用到cookie,此时每一步都在header中填入cookie就稍显麻烦,可以在模块中添加一个配置元件:HTTP Cookie管理器,它会自动关联所有的cookie,很省心。(不需要额外的操作)还讲了逻辑逻辑控制器,逻辑控制器需要跟取样器(请求)一起使用才有意义。

 

课时92 自动生成测试报告

测试报告步骤:

  1. 搭建ant环境(path的环境变量)

cmd的命令提示符输入ant来验证

  1. jmeter的目录:C:\apache-jmeter-5.0\extras下找到ant-jmeter-1.1.1,把它复制到ant的apache(这里没显示后面再看看)目录下
  2. 打开jmeter的bin目录下的jmeter.properties文件,修改output_format,改为xml
  3. 编写build.xml文件

A 执行测试脚本

B 生成测试报告(html)

C 自动发送邮件

  1. 执行命令

cd C:\apache-jmeter-5.0\testSuite

ant

课时93 实战一:再讲接口维度

接口测试的层次:

  1. 端到端的验证

客户端发送请求到服务器,服务器是否有正常回应(200)

  1. 接口的校验

a 参数是否必须添加,假如是,请求的时候字段为空或者没带,服务器也有相应并且返回status200,那么是有问题的

b 字段为空或者字段的边界值,以及字段的类型

3、(假如只做了上面2个层次的校验,虽然接口测试也有有意义的,但是缺少了最重要的一环,基于业务的接口自动化测试,要知道产品都是由业务构成的。)

    做了关于业务的接口自动化测试,那么应用层是没有问题的,即使有问题也只是交互层的一些问题。

相对于手工测试,接口自动化测试一次完成,一直执行。

响应数据一般格式:

{‘status’:200,’msg’:’xxx’,’data’:{xxx}}

课时94: 实战二:获取登录成功后的token

仍然是通过设置后置处理器:json插件,设置变量(token)

课时95 实战三:获取用户的ID

假如你的返回内容有中文,这里请填上utf-8

这里还是拿商户的增加以及删除来做演示,跟postman课程中一样。

TIPS:自动化测试需要保证,每次执行完以后,与执行前一致

意思是有创建,就需要有删除,不要有垃圾数据。形成一个闭环。

说一些现实的话:自动化测试相对于手工测试,肯定有存在的意义,不要说手工也可以测出来。自动化测试节省了时间人力。

另外自动化测试肯定是回归测试上应用的更多些。刚开发的系统bug多,接口自动化测试意义不大,接口测试就可以了。

课时96 实战四:完善基于业务的接口用例

任然是跟postman类似,老师的一个简单的系统中,进行创建商户,查询商户,激活商户,查询商户是否被激活,冻结商户,查询商户是否冻结,删除商户,查看商户是否删除。来做1个闭环的自动化接口测试业务。

课时97 实战五:完善断言

添加上各种断言。

课时98: 实战六:总结

生成报告。

你可能感兴趣的:(python接口自动化测试)