メモの日々


2019年03月19日(火) [長年日記]

[ruby] test-unit-runner-junitxmlをリリースした

Rubyのtest-unitのテスト結果をJUnit XML形式で出力するためのライブラリをリリースした。

実際に作ったのは5年くらい前で、テスト結果をJenkinsに登録するために使っていたもの。現在において需要があるかは疑問だけれど、gemになっていた方が自分が便利なので公開した。

次のようにして使う。

# test.rb
require "test/unit/runner/junitxml"

class MyTest < Test::Unit::TestCase
  def test_1
    assert_equal(1, 2)
  end
end
$ ruby test.rb --runner=junitxml --junitxml-output-file=result.xml
$ cat result.xml
<?xml version="1.0" encoding="UTF-8" ?>
<testsuites>
  <testsuite name="MyTest"
             tests="1"
             errors="0"
             failures="1"
             skipped="0"
             time="0.0048183">
    <testcase classname="MyTest"
              name="test_1(MyTest)"
              time="0.0047834"
              assertions="1">
      <failure message="&lt;1&gt; expected but was
&lt;2&gt;.">
Failure:
test_1(MyTest) [test.rb:6]:
&lt;1&gt; expected but was
&lt;2&gt;.
      </failure>
    </testcase>
  </testsuite>
</testsuites>