在上一篇《Jmeter 系列(一)》中,我勾起了大家对接口测试和性能测试的兴趣,既然兴趣有了,我们来动手练一练吧。由于我们先从基础学起,所以我们先聊聊 windows 下的安装和使用。后期我们能力提升了,再去看看Linux 下是如何使用的。
一、JDK安装
Jmeter 是 java 编写的,所以他运行是需要 jdk 支持的。如果你的机器已经安装了 jdk,这一步就可以 pass 了。
在百度搜索 jdk,进入官网
点击顶部的 products-->java,然后点击右边 download java
选择一个版本(我用的是 1.8,页面上显示的是 8u)点击 JDK download,然后根据操作系统,下载对应的文件。
Windows 安装比较简单,一直下一步就完事了。记住 jdk 的安装路径。安装完后,配置环境变量。鼠标右击"我的电脑",如下图,第 4 个圈的变量值,就是 jdk 的安装路径:
添加完 javahome,需要编辑 path 环境变量,如下图:
这样环境变量就配好了,调出 cmd,输入 java -version 确认下配置是否生效了。
二.Jmeter安装
可以百度搜索 jmeter 或者直接进入官网下载
点击左侧 download releases,会进入下载页面:
当前最高版本是 5.3,需要 java 1.8 以上版本。点击红框,下载 zip 文件,下载后直接解压缩。找到 bin 目录下的 jmeter.bat,双击进入图形化页面:
三. 录制
鼠标右键点击测试计划,选择"添加"->"线程"->"线程组"
鼠标右键点击测试计划,选择"添加"->"非测试元件"->"http 代理服务器"
点击代理服务器节点,默认是 8888,确保端口没有被占用,若被占用,修改成其他未被使用的端口就行了。选择将录制的内容,保存到刚才添加的线程组里。点击启动。
以火狐浏览器为例,点击火狐浏览器的选项按钮,进入设置页面。找到网络设置,点击设置。选择手动代理,输入本机 ip 和 jmeter 中的端口号。
若是要录入 https 的站点需要添加证书,证书文件会自动生成,在 bin 目录下,如下图。
需要注意的是,证书的有效时间是 1 个星期。过期后,需要重新生成证书,重新导入。录制只是一个辅助功能,后期我们熟练后,可以手动编写脚本。只有遇到一些比较急,接口较多且不熟悉的项目,才去使用录制功能。全部设置完成后,我们在浏览器中打开任意网站,比如百度,查看百度新闻。然后查看 jmeter 的线程组,可以发现刚才的动作全部被录制下来了。
Jmeter 停止录制后,若想浏览器可以正常上网,要将浏览器设置里的手动代理改成不使用代理。
四. 运行、查看结果
鼠标右键测试计划,"添加"->"监听器"->"结果树"。再添加一个"聚合报告"。
……
点击顶部的运行按钮,开始执行线程里面的请求。点击结果树,可以查看每个请求的具体结果。
聚合报告可以查看每个请求的响应时间、吞吐量、错误率等,与性能有关的指标。
五. 设计测试用例,修改请求参数,进行接口测试
以中信银行为例,在中信银行官方网站的首页,点击基金,点击优选产品的"更多"按钮,进入如下页面:
以这个页面筛选功能的接口为例,我已经将参数和页面上对应的元素标出来了。比如,我们来试试把 fundKeyWord 参数改成"股票",把 fundType 改成 3,orderBy 改成 1。
运行后,查看结果:
可以看到,输入正常范围的参数,接口是可以正常响应的,和 web 端效果一致。我们在设计测试用例的时候,会用到边界值的方法。
从页面上可以看出参数 orderBy 的输入范围是 1 到 9(其中 5 到 8 应该属于保留值),所以我们可以输入 10 来试试。
果然报错了,达到了测试效果,这个问题通过功能测试是无法找到的。结合接口文档,设计合理的测试用例,熟练的使用测试工具,是接口测试的关键所在。
※※文章仅显示其中一部分,完整文章下载阅读,可以直接:关注+私信“文章”即可
关注+私信回复:“测试”就可以邀请你进入我们的软件测试学习交流群,大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,助你快速进阶Python自动化测试/测试开发,走向高薪之路。