我正在尝试在使用 MiniTest 用 Ruby 编写的 CI 服务器上运行一套自动化测试。我在下面的问题中编写了一个自定义的 minitest 跑步者。
这些测试正在运行基于 Web 的自动化 (Watir Webdriver),我需要自定义运行器来设置浏览器和环境一次,而不是为每个单独的测试设置一次。
我正在努力让这些测试在持续集成服务器上运行。我想利用来自https://github.com/bhenderson/minitest-ci或https://github.com/nicksieger/ci_reporter的报告。
当我尝试包含这些宝石时,我没有收到任何报告。使用 ci-reporter,我收到错误消息,表明我的自定义运行程序中的 before_suite 代码没有被调用。
我如何配置这些 CI 报告器 gem 之一,以便让它与我的自定义 minitest 运行器一起运行?
这是我的跑步者:
MiniTest::Unit.autorun
class MyMiniTest
class Unit < MiniTest::Unit
def before_suites
# code to run before the first test
end
def after_suites
# code to run after the last test
end
def _run_suites(suites, type)
begin
before_suites
super(suites, type)
ensure
after_suites
end
end
def _run_suite(suite, type)
begin
suite.before_suite if suite.respond_to?(:before_suite)
super(suite, type)
ensure
suite.after_suite if suite.respond_to?(:after_suite)
end
end
MiniTest::Unit.runner = MyMiniTest::Unit.new
感谢您的任何建议。