我想将JMeter的CSV数据集配置中提到的CSV文件中的数据用于我的JUnit测试用例程序,并将该数据传递给测试方法。
我知道如何从CSV数据集配置中获取HTTP请求的数据,但找不到任何有关JUnit请求的帮助。
我的测试方法是:
public void test() throws IOException{
try {
CheckUser(UserId);//I want to get this UserId from CSV file mentioned in CSV Data Set Config of JMeter
}catch (Exception e) {
e.printStackTrace();
fail();
}
}
我是JUnit和JMeter的新手。任何有关这方面的帮助将不胜感激。感谢。
答案 0 :(得分:1)
您可以尝试使用:
JMeterContextService.getContext().getVariables().get("varName")
见:
答案 1 :(得分:1)
最后我找到了解决方案:
JUnitSampler junitSampler=new JUnitSampler();
String UserId=junitSampler.getThreadContext().getVariables().get("userId");
现在我的JUnit测试用例程序正在接受CSV数据集配置中提到的CSV文件中的UserId。
感谢PMD UBIK-INGENIERIE和Dmitri T的帮助。
答案 2 :(得分:0)
PMD UBIK-INGENIERIE的答案是正确的,应该有效。
确保您的userId
变量已设置且未通过Debug Sampler和View Results Tree侦听器组合为空。
另外请记住,JMeter变量范围仅限于当前线程组,如果要使用另一个线程组中的值,则需要将JMeter变量转换为具有全局范围的JMeter属性。有关详细信息,请参阅Knit One Pearl Two:How to Use Variables in Different Thread Groups。
您可以按如下方式推荐酒店:
JMeterContextService.getContext().getCurrentSampler().getPropertyAsString("userId")