【Jmeter测试】接口请求完成后,查询数据库结果,检测数据存储是否正确

时间:2024-01-23 22:29:48
  • Jmeter脚本逻辑

  1. 发送POST请求,把数据保存到数据库中

  2. 发讯数据库,数据库查询结果保存的变量中

  3. 使用BeanShell判断数据库查询结果

  • Jmeter脚本结构

  1. 第一个箭头指的是JDBC Connection Configuration
  2. 第二个箭头建立的一个普通事物控制器,方便管理不同的请求案例
  3. 第三个箭头是一个JDBC Request
  4. 第四个箭头是一个BeanShell的断言

 

先讲下1-JDBC的几个重点配置:

  • Variable Name for create pool:这个是连接池的配置,需要取个合适的名字,便于在sql request中使用。
  • Database URL:这个要注意的是url前面需要加上jdbc:sqlserver(根据不同数据库而定),另外还要使用databaseName指定具体的数据库。
  • JDBC Driver class:选择自己业务的数据库JDBC驱动,jmeter默认没有包含所有数据库提供商的jdbc驱动jar包,所以需要自己去下载,然后把下载下来的jar放到lib/ext下,重新启动jmeter加载。
  • Username:填写数据库用户名
  • Password:填写数据库登录密码 

3-JDBC-request的内容:

 

这里就看到Variable Name of Pool Declare...的配置正好是前面的kingdee,所有jmeter通过jdbc执行sql的时候,会从命名叫kingdee的数据库连接池内获取已经生成好的连接进行数据库操作。

Result variable name:设置用来保存从数据库获取的值,会以key=value的字符串格式保存。

查询完成后,使用BeanShell断言,判断查询的值是不是期望的值:

 

获取result中的值,然后使用indexOf方法判断是否存在期望的值,如果不存在,就设置Failure=true,同输出失败信息FailureMessage。