有没有人有使用 minitest-reporters 在 TeamCity 上进行正确测试输出的经验?
我想使用 JUnit 报告器,当我rake test
在我的计算机上运行任务时,输出在 test/reports 下是正确的 xml 格式。但是当我从 TeamCity 运行测试时,它会尝试使用 RubyMine 报告器(尽管 test_helper 指定了 JUnit 报告器)。我发现 mintiest-reporters 的 reports.rb 文件有以下几行:
def self.choose_reporters(console_reporters, env)
if env["TM_PID"]
[RubyMateReporter.new]
elsif env["RM_INFO"] || env["TEAMCITY_VERSION"]
[RubyMineReporter.new]
else
Array(console_reporters)
end
end
并且似乎在给出这些环境变量时默认选择了 RubiMine 报告器,尽管我在 test_helper 中指定了另一个报告器(而且似乎我无法使用 RubiMine 报告器,因为它试图需要一些 TeamCity 文件并且它们以某种方式无法访问)。
我试图TEAMCITY_VERSION
在调用时覆盖,rake test
但它似乎不起作用。
有没有人解决过这个问题?或者是否有其他一些可以更好地工作的记者 gem(我也尝试了 ci_reporter,因为它适用于我的其他具有较低 ruby 版本但不知何故不适用于 2.0.0 的项目)?