【问题标题】:Taurus Execution failure via yaml scripts for jmeter jmx scripts behind proxyTaurus 通过 yaml 脚本执行失败,用于代理后面的 jmeter jmx 脚本
【发布时间】:2019-11-09 08:34:31
【问题描述】:

我正在尝试通过名为“ParallelExecution.yml”的 yaml 脚本使用 Tarus 执行一些 jmeter jmx 脚本。

Yaml 脚本:

execution:
   - executor: jmeter
execution:
- scenario:
    script: C:\Users\SampleScripts\WSO2ServiceAPI.jmx
- scenario:
    script: C:\Users\SampleScripts\KongServiceAPI.jmx
reporting:
 - module: blazemeter
   report-name: TaurusPerformanceTest
   test: WSO2andKong
   project: SampleProject

但是,在我执行命令“bzt ParallelExecution.yml -report”后,它会获取以下错误。

C:\Users\YmlScripts>bzt ParallelExecution.yml
12:38:28 INFO: Taurus CLI Tool v1.13.8
12:38:28 INFO: Starting with configs: ['ParallelExecution.yml']
12:38:28 INFO: Configuring...
12:38:28 INFO: Artifacts dir: C:\Users\YmlScripts\2019-11-09_12-38-28.188921
12:38:28 INFO: Preparing...
12:38:28 WARNING: Failed to check for updates
12:38:29 INFO: 1 obsolete CookieManagers are found and fixed
12:38:36 WARNING: Failed to detect plugins for C:\Users\SampleScripts\modified_WSO2ServiceAPI.jmx: Command '['C:\\Users\\.bzt\\jmeter-taurus\\5.1.1\\bin\\PluginsManagerCMD.bat', 'install-for-jmx', 'C:\\Users\\SampleScripts\\modified_WSO2ServiceAPI.jmx']' returned non-zero exit status 1.

>>> START OF STDOUT >>>
2019-11-09 12:38:31,632 INFO o.j.r.PluginManagerCMD: Command is: install-for-jmx
2019-11-09 12:38:32,697 INFO o.j.r.JARSourceHTTP: Requesting https://jmeter-plugins.org/repo/?installID=docker-64602d8e8eb9f2a1a3b0804261cdb5e6-nongui

<<< END OF STDOUT <<<

>>> START OF STDERR >>>
ERROR: java.lang.RuntimeException: Failed to perform cmdline operation: jmeter-plugins.org
*** Problem's technical details go below ***
Home directory was detected as: C:\Users\.bzt\jmeter-taurus\5.1.1\lib
Exception in thread "main" java.lang.RuntimeException: Failed to perform cmdline operation: jmeter-plugins.org
        at org.jmeterplugins.repository.PluginManagerCMD.processParams(PluginManagerCMD.java:100)
        at kg.apc.cmdtools.PluginsCMD.processParams(PluginsCMD.java:62)
        at kg.apc.cmdtools.PluginsCMD.processParams(PluginsCMD.java:21)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at kg.apc.cmd.UniversalRunner.main(UniversalRunner.java:115)
Caused by: java.net.UnknownHostException: jmeter-plugins.org
        at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
        at java.net.InetAddress$2.lookupAllHostAddr(Unknown Source)
        at java.net.InetAddress.getAddressesFromNameService(Unknown Source)
        at java.net.InetAddress.getAllByName0(Unknown Source)
        at java.net.InetAddress.getAllByName(Unknown Source)
        at java.net.InetAddress.getAllByName(Unknown Source)
        at org.apache.http.impl.conn.SystemDefaultDnsResolver.resolve(SystemDefaultDnsResolver.java:45)
        at org.apache.http.impl.conn.DefaultClientConnectionOperator.resolveHostname(DefaultClientConnectionOperator.java:263)
        at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:162)
        at org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:326)
        at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:605)
        at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:440)
        at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:835)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56)
        at org.jmeterplugins.repository.JARSourceHTTP.execute(JARSourceHTTP.java:499)
        at org.jmeterplugins.repository.JARSourceHTTP.execute(JARSourceHTTP.java:494)
        at org.jmeterplugins.repository.JARSourceHTTP.getJSON(JARSourceHTTP.java:152)
        at org.jmeterplugins.repository.JARSourceHTTP.getRepositories(JARSourceHTTP.java:276)
        at org.jmeterplugins.repository.JARSourceHTTP.getRepo(JARSourceHTTP.java:304)
        at org.jmeterplugins.repository.PluginManager.load(PluginManager.java:71)
        at org.jmeterplugins.repository.PluginManagerCMD.getPluginsManager(PluginManagerCMD.java:110)
        at org.jmeterplugins.repository.PluginManagerCMD.installPluginsForJmx(PluginManagerCMD.java:120)
        at org.jmeterplugins.repository.PluginManagerCMD.processParams(PluginManagerCMD.java:79)
        ... 7 more

<<< END OF STDERR <<<

12:38:36 INFO: 1 obsolete CookieManagers are found and fixed
12:38:46 WARNING: Failed to detect plugins for C:\Users\SampleScripts\modified_KongServiceAPI.jmx: Command '['C:\\Users\\.bzt\\jmeter-taurus\\5.1.1\\bin\\PluginsManagerCMD.bat', 'install-for-jmx', 'C:\\Users\\SampleScripts\\modified_KongServiceAPI.jmx']' returned non-zero exit status 1.

>>> START OF STDOUT >>>
2019-11-09 12:38:39,605 INFO o.j.r.PluginManagerCMD: Command is: install-for-jmx
2019-11-09 12:38:42,035 INFO o.j.r.JARSourceHTTP: Requesting https://jmeter-plugins.org/repo/?installID=docker-64602d8e8eb9f2a1a3b0804261cdb5e6-nongui

<<< END OF STDOUT <<<

>>> START OF STDERR >>>
ERROR: java.lang.RuntimeException: Failed to perform cmdline operation: jmeter-plugins.org
*** Problem's technical details go below ***
Home directory was detected as: C:\Users\.bzt\jmeter-taurus\5.1.1\lib
Exception in thread "main" java.lang.RuntimeException: Failed to perform cmdline operation: jmeter-plugins.org
        at org.jmeterplugins.repository.PluginManagerCMD.processParams(PluginManagerCMD.java:100)
        at kg.apc.cmdtools.PluginsCMD.processParams(PluginsCMD.java:62)
        at kg.apc.cmdtools.PluginsCMD.processParams(PluginsCMD.java:21)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at kg.apc.cmd.UniversalRunner.main(UniversalRunner.java:115)
Caused by: java.net.UnknownHostException: jmeter-plugins.org
        at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
        at java.net.InetAddress$2.lookupAllHostAddr(Unknown Source)
        at java.net.InetAddress.getAddressesFromNameService(Unknown Source)
        at java.net.InetAddress.getAllByName0(Unknown Source)
        at java.net.InetAddress.getAllByName(Unknown Source)
        at java.net.InetAddress.getAllByName(Unknown Source)
        at org.apache.http.impl.conn.SystemDefaultDnsResolver.resolve(SystemDefaultDnsResolver.java:45)
        at org.apache.http.impl.conn.DefaultClientConnectionOperator.resolveHostname(DefaultClientConnectionOperator.java:263)
        at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:162)
        at org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:326)
        at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:605)
        at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:440)
        at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:835)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56)
        at org.jmeterplugins.repository.JARSourceHTTP.execute(JARSourceHTTP.java:499)
        at org.jmeterplugins.repository.JARSourceHTTP.execute(JARSourceHTTP.java:494)
        at org.jmeterplugins.repository.JARSourceHTTP.getJSON(JARSourceHTTP.java:152)
        at org.jmeterplugins.repository.JARSourceHTTP.getRepositories(JARSourceHTTP.java:276)
        at org.jmeterplugins.repository.JARSourceHTTP.getRepo(JARSourceHTTP.java:304)
        at org.jmeterplugins.repository.PluginManager.load(PluginManager.java:71)
        at org.jmeterplugins.repository.PluginManagerCMD.getPluginsManager(PluginManagerCMD.java:110)
        at org.jmeterplugins.repository.PluginManagerCMD.installPluginsForJmx(PluginManagerCMD.java:120)
        at org.jmeterplugins.repository.PluginManagerCMD.processParams(PluginManagerCMD.java:79)
        ... 7 more

<<< END OF STDERR <<<

12:38:46 WARNING: No BlazeMeter API key provided, will upload anonymously
12:38:46 ERROR: Network Error: Request to https://a.blazemeter.com/api/v4/web/version failed
12:38:46 INFO: Post-processing...
12:38:46 INFO: Test duration: 0:00:00
12:38:46 INFO: Artifacts dir: C:\Users\YmlScripts\2019-11-09_12-38-28.188921
12:38:46 WARNING: Done performing with code: 1

我不知道为什么我 taurus 无法执行脚本。它通过 jmeter 作为 jmeter 脚本正确运行。 任何帮助将不胜感激

【问题讨论】:

标签: jmeter jmeter-plugins taurus


【解决方案1】:

查看这一行:

Caused by: java.net.UnknownHostException: jmeter-plugins.org

似乎底层的JMeter Plugins Manager 无法访问JMeter Plugins 后端,这可能是因为您使用corporate proxy 进行互联网访问。

您可以通过将下一行添加到您的 YAML 配置文件中来选择configure Taurus to use the proxy

settings:
  proxy:
    address: http://localhost:8080
    username: johndoe
    password: secret

当然用您自己的值替换addressusernamepassword。完成后 - 重新启动测试,Taurus 会将代理设置传播到下游 JMeter。 JMeter Plugins Manager 尊重 JMeter 代理设置,因此您应该能够正常执行测试。

以防万一,请查看Plugins Manager Network Configuration 页面。

【讨论】:

  • 嗨,德米特里,谢谢!上述解决方案适用于在附加所需证书后连接到 jmeter-plugins.org。但是,我仍然面临 12:38:28 警告:无法检查更新 12:38:46 错误:网络错误:对 a.blazemeter.com/api/v4/web/version 的请求失败,无法继续在 Taurus 上执行。
猜你喜欢
  • 1970-01-01
  • 2022-11-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-28
相关资源
最近更新 更多