XebiaLabs TestViewは,テストの実行とデータ解析,視覚化といった機能とユニットテストツールを統合した,テスト管理と分析を行うためのツールだ。
SeleniumやFitNesse, Cucumber, Cucumber.js, JUnit, Appium, JMeter, Gatling, TestNGなど,さまざまなテストツールとテスト結果フォーマットを扱うことができる。また,Jenkinsと統合して,特定のテスト完了時にその結果をTestViewにプッシュすることも可能だ。
TestViewのプロジェクト(Project)は,テスト仕様(Test Specification)を集めたものだ。テスト仕様には次の4つのタイプがある。
- Active: サポート対象のテストツールが生成したテスト結果の取得に使用する。
- Executable: 複数のテストツールでテストを実行した結果をインポートするために使用する。
- Passive: Jenkinsがテスト結果をプッシュする場所を提供する。
- Set: 複数のテスト仕様を集めたもの。
テスト実行後,記録されたデータは収集,分析されて,ダッシュボード(dashboard)を構成する複数のレポート(report, チャート)にまとめられる。関係者それぞれのためにカスタマイズされた,複数のダッシュボードを用意することが可能だと,XL TestViewのプロダクトマネージャを務めるViktor Clerc氏がInfoQに説明してくれた。
現在,機能テストツール用には,10以上のさまざまなレポートが用意されています。ひとつのダッシュボードで適切に可視化するには,多過ぎる数です。さらに,テスト結果に対するニーズは,それぞれの立場で異なる場合があります。開発チームは‘結果そのもの’に関心があるでしょうし,テストの自動化を担当する技術者ならば,例えばすべての自動テストに要する実行時間の傾向を知りたいと思うかも知れません。マネージャの関心は,全体的な品質トレンドにあるでしょう。機能テストとパフォーマンステストの結果を組み合わせることも,もちろん可能です。これらすべての考察を個々のレポートに含めるだけでなく,オーダーメードのダッシュボードの提供も可能にしたいと考えています。
これらのレポートには,テストの成功/失敗,テストの正当性,実行時間,傾向,前回のテストとの比較といった情報と統計が含まれていて,時間の経過による改善状況を把握することが可能となっている。判定基準を設定しておけば,テストセットの合否を自動判定して,リリースの実行可否を判断することもできる。
Clerc氏は私たちに,将来的には他のテストツールのサポートや,プロプライエタリなツールをサポートするカスタムプラグインを作るための開発者向けAPIを追加する予定のあることを教えてくれた。
TestViewは,単一のプロジェクトとダッシュボードを含む無償のCommunity Editionと,複数のプロジェクトとダッシュボードをサポートする2種類の有償版として提供される。