Python自动化测试-Jmeter做接口测试实际案例分享

Posted 测试baby

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python自动化测试-Jmeter做接口测试实际案例分享相关的知识,希望对你有一定的参考价值。

在这里插入图片描述
在这里插入图片描述

本文主要针对http接口进行测试,使用Jmeter工具实现。

Jmter工具设计之初是用于做性能测试的,它在实现对各种接口的调用方面已经做的比较成熟,笔者使用Jmeter工具从对Http接口的测试进行入手。 本节主要介绍如何通过录制的方法对http接口进行测试,下节将介绍如何通过.jmx脚本的方式对接口进行测试。
在这里插入图片描述

1.介绍什么是接口现在最常用的2种接口就是webservice和http api接口,webservice 接口是走soap协议通过http传输,请求报文和返回报文都是xml格式,可以通过jmeter、soapui工具进行测试;http api接口是走http协议通过路径来区分调用的方法,请求报文格式都是key-value形式,返回报文一般是json串,常见的请求方式有get、post请求等;

2.介绍http协议常见的2种请求方式的区别

get和post请求:

get请求:从指定的服务器中获取数据,直接在浏览器里输入就可以获取信息;

post的请求:提交数据给指定的服务器处理,可以向服务器发送修改请求,从而修改服务器的,需要借助测试工具;

get请求特点:

(1)get请求能够被缓存

(2)get请求会保存在浏览器的浏览记录中

(3)以get请求的url能够保存为浏览器书签

(4)get请求有长度限制

(5)get请求主要用以获取数据

post请求特点:

(1)post请求不能被缓存

(2)post请求不会保存在浏览器浏览记录中

(3)以post请求的url无法保存为浏览器书签

(4)post请求没有场地限制

在这里插入图片描述

3.录制脚本的方式(本文以测试平台为例进行讲解)3.1利用badboy进行录制badboy录制的优点在于:不会产生大量无用请求,且具有可视化的能力。 实现步骤如下: 3.1.1 (1)首先打开badboy,这里以测试平台为例"http://10.0.0.113:81/index/",这边可以输入你需要录制的域名或ip 图中标1的是录制开关按钮,录制状态 标2的地方输入域名或IP 标3的地方在请求的时候会出现录制的脚本信息

在这里插入图片描述

(2)点击开始录制,域名链接成功后,右侧框内会出现测试平台的界面

在这里插入图片描述

(3)在界面内进行想要录制的操作,左侧的脚本栏中会自动生成录制过程,将你所进行的操作以及结果录制下来,简单的做一个小demo

在这里插入图片描述

(4)录制完成后点击结束按钮,可以右键点击工程进行回放某一步操作或者回放整个操作(badboy还具有打断点,多次执行脚本等很多的功能,此处不做详细讲解)。 (5)录制完成之后,可以通过badboy将脚本导出在jmeter中进行使用,首先先把刚才录制的脚本导出来 工具栏:File——Export To Jmeter 导出为Jmeter格式,保存到桌面 (6)接下来使用jmeter打开录制成功的脚本 通过打开bin文件夹下的jmeter文件打开jmeter

在这里插入图片描述

(7)导入脚本后打开

在这里插入图片描述

左侧能够看到刚刚录制的脚本内容:

在这里插入图片描述

(8)接下来就要在jmeter中执行刚刚录制的脚本了,但是执行之前需要添加一个监听器-查看结果树来查看运行状况

在这里插入图片描述

(9)在查看结果树中能够查看每个请求的状态以及响应数据

在这里插入图片描述

在这里插入图片描述

(10)添加一个简单的断言:响应断言

在这里插入图片描述

响应断言设置为包含http响应码为200

在这里插入图片描述

添加断言监听器,打印满足响应码为200的请求并保存

在这里插入图片描述

(11)再次执行脚本,查看查看结果数和断言监听器中打印的结果 查看结果树的结果:

在这里插入图片描述

断言监听器的结果(打印了成功的请求):

看完这篇内容后,相信以下两件事,也会对你的个人提升有所帮助:

1、 点赞,让更多人能看到这篇文章,同时你的认可也会鼓励我创作更多优质内容。

2、 让自己变得更强:想一想,如果你想在测试这个行业一直做下去,你的经验和测试技术是远远不够的,你需要进阶,你需要丰富你的技术栈!还等什么!

最后:【可能给予你助力的教程】

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

关注我的微信公众号:【伤心的辣条】免费获取~

我的学习交流群:902061117 群里有技术大牛一起交流分享~

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

好文推荐:

35岁之后软件测试工程师靠什么养家?我能继续做测试!

App公共测试用例梳理

Python简单?先来40道基础面试题测试下

阿里二黑叹息:越来越多的年轻人从职场撤退了?

从一名开发人员转做测试的一些感悟

以上是关于Python自动化测试-Jmeter做接口测试实际案例分享的主要内容,如果未能解决你的问题,请参考以下文章

Python接口自动化测试框架(工具篇)-- 接口测试工具JMeter

Jmeter 参数化之数据驱动(ddt)

《jmeter接口自动化与性能实战-飞天小子.pdf》

python接口自动化测试(c测试环境的准备)

python自动化教程Jmeter性能测试

使用postman+newman+python做接口自动化测试