2017-06-14 67 views
0

在第一個線程組,在豆殼後處理器我已經添加以下代碼來設置的JMeter屬性名稱爲「ID」:無法訪問其他線程組中的Jmeter屬性。

int abc=10 
int start=${abc}+1; 
${__setProperty("id",start)}; 
print(props.get("id")); 

在第二個線程組,我試圖訪問「id的值「in beanshell using:

int pq=${__P("id",1)}; 

現在,'pq'的值應該是11,但它的默認值是'1'。 當我在Debug PostProcessor中檢查時,id的值是字符串'start'而不是11.我不確定需要什麼更改。我注意到的另一個有趣的事情是:在控制檯中,它打印11「print(props.get(」id「))」,在jmeter屬性中存儲字符串值'start'。

任何幫助表示讚賞。

回答

1

首先,通常的通知不會將變量和函數調用內聯到基於腳本的測試元素中,因爲它們可能行爲不當。

所以,你應該修改你的代碼,如:

  1. 第一個線程組:

    int abc=10 
    int start=abc+1 
    props.put('id', start) 
    
  2. 第二個線程組

    int pq = props.get('id') 
    log.info('Property value: ' + pq) 
    

注:上面的代碼假設使用JSR223 Test ElementsGroovy language

+0

謝謝@Dmitir T它正在工作。 –