接口自动化设计方案
需求:1、对应用发起插入数据库;2、根据name查询数据;3、根据第2个返回结果,查询数据。
- 首先建立3个线程组,分别是插入数据,查询数据,get数据。
- 在线程组前面添加http请求默认值和http信息头管理器,http请求默认值配置请求IP和端口号,http信息头管理器添加Content-Type=application/json
-
在测试计划里面,勾选“独立运行每个线程组”(让接口按照线程组顺序执行)
-
接口请求参数采用随机生成,在“BeanShell 预处理程序”中添加java代码,最后通过vars.put("name",radString(3));将结果赋值到name参数里面,而请求接口中通过${name}来调用
-
将name查询结果的返回值通过正则表达式识别出来!
-
正则表达式中“要检查的响应字段”勾选Body
-
将查询数据的结果给get数据做入参。先“BeanShell 取样器”配置{__setProperty(out,${keys},)}(其中keys是正则表达式提取器中的引用名称)。然后在get数据线程组接口参数配置{__property(out,,)}。
-
接口查询数据与数据库里查询内容进行对比。添加配置元件下的JDBC Connection Configuration,配置对应的数据库信息
-
添加取样器下面的JDBC Request,输入数据库查询语句,得到数据库返回值赋值给dbname。
-
在http请求里面添加后置处理器JSON提示器,截取返回值中的description赋值给desc。
-
添加断言下面的BeanShell断言,输入代码,代码内容为对比接口返回的description与数据库获取的description一一对比。
jmx文件链接: https://pan.baidu.com/s/1zlu1Hi3GwJTKy_kQzAHftg 密码: tk08