0

我想根据步骤@ https://github.com/flood-io/ruby-jmeter安装 jmeter 脚本

它是安装了 ruby​​ 和 ruby​​-jmeter 的 Windows PC

$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
require 'ruby-jmeter'

test do
  threads count: 1 do
    visit name: 'Home Page', url: 'http://altentee.com/' do
      duration_assertion duration: 10
    end

    # write to an assertion results listener, errors only
    assertion_results filename: '/var/log/flood/custom/assertion.log',
      error_logging: true,
      update_at_xpath: [
        { '//xml' => 'true' },
        { '//assertions' => 'true' }
      ]
  end
end.run(path: '/usr/share/jmeter/bin/', gui: true)

我得到的错误

C:/momento/momento_performance_test/lib/ruby-jmeter/extend/threads/thread_group.rb:5: warning: constant ::Fixnum is deprecated
C:/Ruby25-x64/lib/ruby/2.5.0/open3.rb:199:in `spawn': No such file or directory - /usr/share/jmeter/bin/jmeter  -t ruby-jmeter.jmx -j jmeter.log -l jmeter.jtl  (Errno::ENOENT)
        from C:/Ruby25-x64/lib/ruby/2.5.0/open3.rb:199:in `popen_run'
        from C:/Ruby25-x64/lib/ruby/2.5.0/open3.rb:190:in `popen2e'
        from C:/momento/momento_performance_test/lib/ruby-jmeter/dsl.rb:43:in `run'
        from assertion_results.rb:18:in `<main>'
W, [2020-03-09T11:59:45.175528 #13404]  WARN -- : Test executing locally ...
4

1 回答 1

0

鉴于您在 Windows 上,并且您正在复制和粘贴上述页面中的说明

test do
threads count: 10 do
visit name: 'Google Search', url: 'http://google.com'
end
end.run(
        path: '/usr/share/jmeter/bin/',
        file: 'jmeter.jmx',
        log: 'jmeter.log',
        jtl: 'results.jtl',
        properties: 'jmeter.properties')

您需要修改这一行:

path: '/usr/share/jmeter/bin/',

指向 Windows 上 JMeter 安装的“bin”文件夹,例如:

path: 'c:/apps/jmeter/bin',

或安装 JMeter 的任何地方


如果您正在寻找一种以编程方式创建 JMeter 测试的方法,您可能会发现Taurus工具更容易,它提供了使用简单YAML 语法以声明方式创建 JMeter 测试的可能性。查看Taurus:测试自动化工具星座文章中的新星以获取更多详细信息。

于 2020-03-09T09:09:40.440 回答