+断言+报告+jenkins)
手工自动化时间紧在开发提测前尽早发现问题所以速度要快接口自动化的目的与手工自动化场景目的完全不一样他是为了维护产品质量防止引入新的问题执行时间一般都是在系统测试完成后 且产品需要多次更新迭代不是一次性的产品需要长时间运维结合jenkins定时点执行依据API接口文档、抓包工具等参数化使用用户定义变量如登陆中手机号、密码等可使用用户定义的变量来定义方便全局更改避免去每个接口中更改使用函数灵活使用函数比如说性别就可以使用随机函数使用csv参数导入data数据文件从上一个接口中取参数通过json提取器获取响应中的数据给后面的接口做参数化。通过连接数据库从数据库从取数据第一步jmeter中先配置数据库连接定义连接池名称数据库的URL连接地址ip和port、用户名、密码等信息第二步添加jdbc request通过连接池名称关联上面的数据库配置输入所需要的sql语句。其他方法方便自动化的方法断言json断言灵活使用各种断言响应断言本次断言的是状态码200数据清除自动化脚本需要定时定点执行所以需要清除上次数据避免影响下次执行我们一般通过连接数据请求每次执行完接口后直接清除本次数据。使用tearDown线程组增加jdbc配置和请求同参数化中一致。报告jmeter的bin目录下执行命令jmeter -n -t D:\test25\Jmeter_test\saas.jmx -l result.jtl -e -o ./report01;result.jtl文件如果目录下已有将影响生成html报告报告如下jenkins启动服务启动jenkins服务jenkins的war包下面下面执行命令 java -jar jenkins.war新建任务以及配置新建任务配置任务-定时执行每日8点、17点执行H 817 * * * 或者每日8点执行 H 8 * * *设置执行命令Execute Windows batch command命令入下 需要先清除上次的报告结果包括.jtl文件和报告避免下次生成报告失败。del result.jtlrmdir report /S /Q“D:\Program Files\Java\apache-jmeter-5.6.3\bin\jmeter.bat” -n -t “D:\test25\Jmeter_test\saas.jmx” -l result.jtl -e -o ./report注释所有绝对路径都需要用双引号避免执行被Windows 路径中的空格导致命令被截断![配置执行(https://i-blog.csdnimg.cn/direct/c9a416d746614a20a4dea4da74da17aa.png)设置报告报告路径设置通知报告发送给谁报告的样式以及内容格式![设置邮件发送人(https://i-blog.csdnimg.cn/direct/4f73c3cb683b4a4896b06e66516c0d39.png)7. 报告触发机制本次使用always构建历史点击构建查看控制台输出报错都在这块查看邮件通知