pythonwebsocket接口自动化测试_基于websocket接口的jmeter自动化测试实践(2)
jmeter屬性
通常我們會使用用戶自定義變量,把每個用例共用的東西提取出來。然而,當測試環境多起來時,這些寫死在jmx腳本里的變量就不那么好用了。例如,對多個環境測試時,難道要復制多個腳本、單獨改變量值?
此時,我們可以使用jmeter屬性。因為屬性是可以通過命令行傳遞的,例如:
1-Jtestproperty=202
而在需要使用變量的地方直接用${__P(testproperty,)}使用命令行傳遞的值。 當然,如果腳本已經大量使用了user defined variable,且可能會有一個默認環境一批默認值,那么,在user defined variable里把變量的值設為${__P(testproperty,30)}攜帶默認值30即可。
循環中的計數器
我們需要循環使用一系列值用于某個用例,且每個值與循環到第幾次有關時,可以在循環中使用計數器。
這時需要注意,如果在thread loop里計數器會一直累加,如果希望在每次thread loop中重新清零,要選擇reset。
浮點隨機數
有時,我們需要構造浮點式的隨機數。而jmeter默認的隨機數只有整型。此時,可以利用請求中都是字符串,以字符串默認連接組合的方式構造浮點數。
嵌入java值
當我們需要構造一些測試值,但自帶的jmeter函數并不支持時,可以考慮能夠直接使用原生java代碼生成變量的beanshell。
例如,我們需要構造一個日期為前天,自帶的__time只能獲取到當前日期。而加入一個beanshell PreProcesser就可以加入java代碼得到值。
其中,beanshell里生成的變量,可以調用vars.set(key,value)設置到jmeter上下文中。而想使用已經存在的jmeter上下文中的變量時,則可以使用vars.get(key)。需要注意,返回的value是字符串類型。
組合條件判斷
做條件判斷時,我們很可能會做多個條件組合的判斷,而默認的jmeter if controller是不支持的。此時可以這么用:
1${__javaScript(${count}<60 && ${code}=="5001")}
總結
以上是生活随笔為你收集整理的pythonwebsocket接口自动化测试_基于websocket接口的jmeter自动化测试实践(2)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: i3 4160内存测试揭秘:内存频率、容
- 下一篇: python三级字典_python_三级