本文主要是介绍实际生产中的一次非典型的基于jmeter的接口自动化实践,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
实际工作中遇到过一次自动化巡检的需求,作为测试人员没法从源代码入手,加之数据库也不熟悉,故采取接口自动化的方式来实现巡检,算是一种歪门邪道吧,应该不是接口自动化的常规使用方式。jmeter在这里的作用实际上也只是起到了调接口、传参、串联脚本的作用,使用纯python脚本来实现应该是更为上乘的做法,但因为笔者当时正好在做jmeter自动化的工作,python调接口之类的涉猎不深,本着有什么用什么的原则(思维惯性,一时转不过来弯)就直接拿jmeter上了,因为确实是一次特殊的尝试,聊以记录
需求
实现每日自动化巡检网站的各个记录页的数据,寻找有无异常记录并抛出警告信息
涉及技术
jmeter、python、bat、java
思路
1.利用jmeter依次访问各个网页的记录查询接口,每次访问后直接使用jmeter的json提取器取出记录列表,再通过写文件创建一个json文件的形式将记录数据传递给python脚本。
2.接下来直接在jmeter的beanshell断言中用java写一段代码,执行python脚本(用于处理记录数据并返回结果,主要是笔者的java水平太次,没法用java直接处理),通过python脚本打印信息的方式在beanshell中读取输入输出流,实现python脚本和jmeter之间的传参。通过python脚本返回的结果在beanshell中进行断言,判断要不要报错并返回对应的异常信息
3.用ant构建jmeter脚本实现jmeter脚本的执行和测试报告生成
4.最后用bat脚本将整个过程串联起来,包括一些预处理和后处理步骤,如删文件,打包结果,执行发送邮件的脚本等等
ps:这里还串联了一个用pytest实现的ui自动化脚本,同样的执行和传参方式,获取ui自动化巡检的结果并添加到测试报告中,ui自动化脚本编写工作是笔者当时的领导完成的,笔者只负责串联传参的工作
这篇关于实际生产中的一次非典型的基于jmeter的接口自动化实践的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!