百度网盘地址更新:https://pan.baidu.com/s/13S0WStZpwlbL15IBp_Q-bg
如图:
编写测试用例
修改用例文件地址
修改报告附件地址
int errcount = Integer.parseInt(vars.get("errcount").trim()); //统计失败用例数
int allcount = Integer.parseInt(vars.get("respcount").trim()); //统计用例组的用例数
if(SampleResult.getResponseCode().equals("200") && SampleResult.getResponseDataAsString().contains("${ResponseData}")){ //判断 状态码和断言内容
SampleResult.setSuccessful(true); //如果状态码和断言都匹配成功,标记该用例通过
vars.put("sendemail","no"); //标记不需要发送报警邮件
allcount++; //用例数+1
vars.put("respcount",allcount.toString()); //把当前已执行用例数保存到全局变量中
}else { //如果状态码或断言,有一个不匹配
errcount++; //失败用例数+1
allcount++; //用例数+1
SampleResult.setSuccessful(false); /标记该用例执行失败
String code = SampleResult.getResponseCode(); //获取状态码
String msg = SampleResult.getResponseMessage(); //获取响应信息
String data = SampleResult.getResponseDataAsString(); //获取响应Body
vars.put("Reqstauts","requestNook"); //标记该用例状态为 requestNook
vars.put("respcode",code); //保存状态码到全局变量
vars.put("respmsg",msg); // 保存响应信息到全局变量
vars.put("respdata",data); //保存响应body到全局变量
vars.put("errcount",errcount.toString()); // 保存失败用例数到全局变量
vars.put("respcount",allcount.toString()); //保存统计用例数到全局拜纳凉
vars.put("sendemail","yes"); //修改全局变量sendemail为yes,发送报警邮件
}
邮件内容如下:
至此,Jmeter HTTP 接口自动化引擎搭建完毕
还可以利用 jenkins 定时执行 Jmeter 引擎,从而实现对线上接口的监控
资料参考:
(1)Jmeter build.xml 文件:http://pan.baidu.com/s/1i46tMlR
(2)Jmeter 生成报告格式(参考 heman 贺满博客http://www.cnblogs.com/puresoul/http://pan.baidu.com/s/1kVssMzl):
(3)jmeter.properties(修改 jmeter 生成.jtl 文件内容配置):http://pan.baidu.com/s/1cyaNlc
(4)测试用例模版:http://pan.baidu.com/s/1hselPlU
(5)Jmeter 接口自动化引擎内容:http://pan.baidu.com/s/1geC34pt
本次搭建内容,多为参考前辈博客,如有侵权,请联系我个人(onthewatli@foxmail.com),谢谢
** 本文档仅限于 jmeter3.1 版本,3.2 版本有部分 bug,并不支持本文全部功能