我需要使用JMeter测试一组HTTP Tomcat服务器。我有一个'n'目标服务器列表和'n'JMeter远程测试服务器列表,以及将在URL中针对每个Tomcat服务器测试的单个变量参数列表。但是,每个JMeter远程测试服务器应该只测试一个目标服务器,其中一组线程循环遍历所有参数 - 因此测试是1比1但我需要整理结果,因为目标服务器形成CDN边缘集共同起源URL。 如何确保使用相同的参数集由单个JMeter服务器测试每个目标服务器?使用CSV DATA SET CONFIG作为参数列表很明显,但我看不出如何在目标服务器列表中使用相同类型的config元素。
我可以设想的唯一方法是将每个远程JMeter服务器的包含单个唯一目标URL的csv文件分发。这样,每个JMeter服务器上的所有数百个线程只知道一个目标,但可以使用单个文件名作为源URL。有谁知道更好的方法?
答案 0 :(得分:0)
JMeter删除“从属”基本上执行在“主”机器上指定的相同测试计划,因此默认配置不是您可以使用的。
有两个选项:
您可以修改每台从属计算机上的 user.properties 文件,以包含单个唯一端点(URL),如:
定义一个将指定端点的属性:
url=http://some.cdn.1
在Test Plan中使用__P() function来读取值,如:
${__P(url)}
因此,在每个远程从站上给定不同的url
属性,每个从站将命中不同的端点。有关JMeter属性及其使用方法的更多信息,请参阅Apache JMeter Properties Customization Guide。
您可以将__machipeIP()或__machineName()函数与If Controller结合使用,以便根据“从属”IP地址或主机名切换执行分支,例如:
${__machineIP()} == "172.30.40.50"
${__machineIP()} == "172.30.40.51"