在Jmeter中的断言结果文件名中使用变量格式的CSV数据集

时间:2015-02-02 13:04:13

标签: csv jmeter

我有以下Test Plan

Thread Group
    - CSV Data Set Config
    - Controller
    - Assertion Results

我的csv中有多行代码可以获取群组中的多个主题。 csv遵循以下模式:

AB;12;under
CD;24;over

我想将Assertion Results保存在不同目录中,具体取决于csvunderover)的最后一个值。

为此,我在csv的变量V_POSITION中匹配CSV Data Set Config的最后一个值。我使用此路径名保存Assertion Results

Results_Directory/${V_POSITION}/Results.csv

但它似乎不起作用。当我启动测试时,文件将以字面${V_POSITION}作为目录保存在路径名中。好像变量V_POSITION没有值。

我使用Debug Sampler来验证V_POSITION的值,并且对于每个线程,它都有underover

我怀疑它是一个变量范围问题,所以我尝试使用直接添加到Test Plan的全局变量,但我总是得到默认值。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

目前(我在谈论JMeter 2.12)无法在断言结果,CSV数据集配置,其他听众等中使用JMeter变量作为文件名的一部分。

但是,可以使用属性,以便您可以实现所需的

  1. 将您的V_POSITION JMeter变量转换为JMeter属性(您可以保留原样名称。有关如何完成此操作的详细信息,请参阅How to Use Variables in Different Thread Groups.指南
  2. 将断言结果侦听器中的路径更改为

    Results_Directory/${__property(V_POSITION,,)}/Results.csv
    
  3. 确保文件夹underover等存在,JMeter不会为您创建文件夹,结果将无处可去。