Jmeter如何做数据驱动,业务关联
1、将这些jar包放到jmeter的lib目录下,记得要在jmeter关闭的情况下放置!然后重启jmeter 。
添加jar包后,在本地jmeter目录下创建用例文件,如下所示

2、Case - 用例名称
parameter- 参数值,用于生成对API的请求
request - 在此列中,JMeter将向API写入接口路径
Method - 在此列中,JMeter将写入请求方法
ActualResult - 实际结果是我们接口实际返回的结果。将与预期值进行比较
ExpectedResult 预期结果是我们期望从API获得的结果,手动写入
ResponseCode 响应码是我们接口返回的响应状态
Status Jmeter将实际值与预期值进行比较,得出断言结论
2:添加一个线程组
3:添加一个用户变量
在测试计划中创建一个名为“pathToFile”的变量”。这个变量的值是我们上面创建的Excel文件的路径(注意双反斜杠)

3、添加一个JSR223采样器,目的是根据excel文件创建一个Workbook对象

4、代码如下:


5、添加一个While控制器
While控制器用于Excel文件包含输入数据的行数,作为发送请求的次数

6、在While Controller中,添加以下代码,用于停止While Controller
${__javaScript("${stopWhile}"!="OK")}
6:While控制器下添加一个计数器,用于循环计数

7、While控制器下添加一个JSR223采样器
这一步我们从excel中获取字符串,并将这些值存储在变量中



8、While控制器添加一个if控制器 ,用于判断excel中的方法,决定接口分支

9、IF控制器下添加http请求 ,该请求在控制器下循环读取用例(接口路径和参数)

10、http请求下循环提取响应信息 ,用于和预期值进行比较

11、http请求下添加一个BeanShell断言 ,用于比较实际结果和预期结果,并在Excel中记录响应实际值,响应状态和用例通过状态



12、添加JSR223采样器 ,用于回写运行结果到excel中
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFRow;
import java.io.*;
try {
FileOutputStream out = new FileOutputStream(new File("${pathToFile}"));
vars.getObject("book").write(out);
vars.getObject("book").close();
} catch (Exception e) {
log.info("!!!!!!!!" + e.getMessage() + "!!!!!!!!!!!!!!!");
}


13、从主干业务中返回主数据id和session,并保存为全局变量供支线业务调用

14、分支业务处理
1:在excel中创建新的sheet,作为分支流程的数据

15、创建一个新的线程组,写入分支业务流,修改sheet值


16、sampler中调用全局变量的主数据id,与主业务流进行关联
