Jmeter参数WebSocket变量

时间:2018-10-17 22:27:53

标签: url jmeter

我在JMeter中测试后端应用程序(也包括Java和Node JS,通信:NodeJs部分中的WebSocket和Java部分中的http) 我必须参数化url,以在开发url,生产和prepod之间切换

我是通过CSV文件完成的。我在拥有Jmeter 5.0的文件夹中创建了CSV文件夹。我准备了3个CSV文件

1。发展是:

protocol,   host
http,   10.219.227.66

2.prepod

protocol,   host        
https,  prepod.myprepod.io

3.production

protocol,   host        
https,  production.myproduction.io

我将其设置为:

CSV数据集配置

Filename ${_P()/usr/local/Cellar/jmeter/5.0/libexec/CSV/development,development}.csv
variable Names ; protocol,host

WebSocket打开连接     服务器名称或IP $ {host}

Switch Controller
Switch Value ${protocol}
HTTP Request Default - server name or ip ${host}, protocol http ${protocol}

用户定义的变量

name        value
protocol .  ${_P(protocol,)}
host .      ${_P(host,)}

问题是:

  1. 我的设定这有什么问题?我该如何改进?
  2. 我将测试项目保存在桌面上,但是Jmeter 5.0我在计算机的其他位置上-用户使用的是jmeter 5文件夹-如果可能会出现问题?
  3. 有人知道为什么它对我不起作用以及如何解决吗?

1 个答案:

答案 0 :(得分:0)

一切都不对

  1. 假设您在CSV文件中定义了protocolhost变量,则无需在CSV Data Set Config中声明它们,只需将字段留空

      

    JMeter支持CSV文件,该文件的标题行定义了列名称。要启用此功能,请将“变量名称”字段留空。必须提供正确的定界符。

  2. 请勿使用CSV文件的完整路径,因为很有可能会使在distributed modecontinuous integration服务器上的其他计算机上运行测试成为不可能。

    JMeter CSV Data Set Config

    因此,选择${__P(environment,development)}.csv

  3. 之类的东西
  4. 使用Debug SamplerView Results Tree侦听器组合再次检查protocolhost变量是否具有期望值

    JMeter debug sampler view results tree listener

    如果看不到它们-检查 jmeter.log 文件中是否有可疑条目,很可能JMeter无法找到.csv文件并从中读取变量。有关更多详细信息,请参见How to Debug your Apache JMeter Script文章。

  5. 我在您的CSV文件中看不到任何WebSocket URL schema (ws or wss),所以我怀疑您的WebSocket Open Connection Server是否能够成功执行。