jmeter(四十六)参数化与断言实战

概述

今天用jmeter作一次参数化实战。经过计数器遍历参数表,而后查询jdbc进行beanshell断言。html

涉及元件

用户参数,计数器,正则表达式,jdbc,beanshell脚本前端

详细过程

在咱们的opms项目管理中,有一个项目状态的修正,四种状态分别为延期,挂起,进行,结束正则表达式

 

在接口自动化案例中,咱们须要对这四种状态进行遍历,而后进行断言,判断状态是否正确修改。shell

咱们经过抓接口,发现了传参的一个规律:除了项目id以外,四种状态的status分别是1,2,3,4。数据库

 

 

 咱们把添加项目的返回id用正则表达式提取出来,做为项目状态接口的入参,参数名称为projectid,这个是主键idpost

 

如今思考一下,接下来的四种状态,你要如何去操做才能所有执行一次并断言结果???性能

一般的作法是写四个接口,传四种参数,再添加四个断言,可是这种作法会形成大量的脚本冗余,在接口自动化中是会被鄙视的!以下:spa

 

如今教你们用精简的脚本完成复杂的逻辑校验3d

 

添加一个循环控制器,让它循环四次,能够遍历四种状态

 

 

 

添加一个用户参数,在参数表中配置四种项目状态

 

 

添加一个计数器,上限为4,递增1,用来遍历参数表中的四种状态

 

 

添加一个http请求,在名称中遍历状态名;在入参中遍历状态值

 

添加一个jdbc请求,经过变动的状态值和项目id组合查询的方式,验证每一次状态的变动是否正确的写入了数据库

 

咱们在接口执行了以后,还须要去前端页面判断一下状态名称是否真的被修改了,在这里用到了xpath表达式去提取前端页面数据

添加一个beanshell断言,判断咱们数据库返回值是否为空,若是不为空且和前端页面返回的状态名称,表示断言经过,不然断言失败

 

运行脚本,在结果树中和log日志中观察执行效果

遍历了四种状态并对实际运行结果进行了断言

 

 

关注公众号,获取更多精彩文章!

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

相关文章
相关标签/搜索