使用 Jenkins 的 property/variable 值
Using property/variable value from Jenkins
我遇到了一个非常烦人的问题。看起来很容易解决,但我看不出我做错了什么。
全部从 开始。
我设法通过吐出一个数组从 Jmeter 中的 Jenkins 获取值。
String line = "${__P(jenkinsparams)}";
String[] words = line.split(",");
字符串看起来像:
-Jjenkinsparams="999,999,8443,1433,SQL2012,sa"
所以我有:
- 字数[0] = 999;
- 字数[1] = 999;
- 字数[2] = 8443;
- [...]
- 字数[5] = sa;
此操作在具有 1 个线程的 BeanShell 采样器中进行。我怎样才能进一步使用这些值?即使在不同的线程组中。
我试过:
props.put("SqlIP",words[0]);
props.put("SqlInstance", words[1]);
但是 ${__P(SqlIP)} 在 JDBC 连接配置中使用时不检索值:
jdbc:sqlserver://${__P(SqlIP)}\${__P(SqlInstance)}
如何使用 properties/variables 从该数组发送数据以建立 JDBC 连接?我需要它们用于:SQL IP、SQL 实例、SQL 用户名和 SQL 密码。所有这些都是从 Jenkins 发送到那个数组中的。谢谢
因为JDBC Connection Configuration is a Configuration element and according to Execution Order它在任何Beanshell测试元素之前开始。您将不得不想出另一种设置值的方法。
我不知道 JMeter 级别的任何参数数量限制,如果你是 运行 奇异的 shell 或引入此限制的自定义 JMeter 启动脚本形式,你可以工作通过将您的配置放入 user.properties 文件或可以通过 -q
parameter, check out Apache JMeter Properties Customization Guide 传递的自定义属性文件来了解有关设置和覆盖 JMeter Properties[=13 的更多信息=]
我遇到了一个非常烦人的问题。看起来很容易解决,但我看不出我做错了什么。
全部从
我设法通过吐出一个数组从 Jmeter 中的 Jenkins 获取值。
String line = "${__P(jenkinsparams)}";
String[] words = line.split(",");
字符串看起来像:
-Jjenkinsparams="999,999,8443,1433,SQL2012,sa"
所以我有:
- 字数[0] = 999;
- 字数[1] = 999;
- 字数[2] = 8443;
- [...]
- 字数[5] = sa;
此操作在具有 1 个线程的 BeanShell 采样器中进行。我怎样才能进一步使用这些值?即使在不同的线程组中。
我试过:
props.put("SqlIP",words[0]);
props.put("SqlInstance", words[1]);
但是 ${__P(SqlIP)} 在 JDBC 连接配置中使用时不检索值:
jdbc:sqlserver://${__P(SqlIP)}\${__P(SqlInstance)}
如何使用 properties/variables 从该数组发送数据以建立 JDBC 连接?我需要它们用于:SQL IP、SQL 实例、SQL 用户名和 SQL 密码。所有这些都是从 Jenkins 发送到那个数组中的。谢谢
因为JDBC Connection Configuration is a Configuration element and according to Execution Order它在任何Beanshell测试元素之前开始。您将不得不想出另一种设置值的方法。
我不知道 JMeter 级别的任何参数数量限制,如果你是 运行 奇异的 shell 或引入此限制的自定义 JMeter 启动脚本形式,你可以工作通过将您的配置放入 user.properties 文件或可以通过 -q
parameter, check out Apache JMeter Properties Customization Guide 传递的自定义属性文件来了解有关设置和覆盖 JMeter Properties[=13 的更多信息=]