背景やこの記事の意図
私、気づけばQA業界で15年働いております。
Xbox360のゲームテスターから始まり、コンシューマゲーム、スマホゲームを中心にゲーム9割、非ゲーム1割くらいの割合で多様なプロダクトのQA現場を渡り歩いてきています。
そんな私のキャリア内の現場において、BTSやITSと呼ばれる管理システムはほとんど導入されていましたが、テスト管理ツールが導入され、継続的に運用していた(運用できていた)のは1社だけでした。その1社ではTestLinkというオープンソースのツールを使って、専任の管理者とエンジニアが張り付いてメンテナンスしていました。
その経験は6年くらい前ですが、いちユーザー、管理者として、テスト実施、進捗確認がしやすく有益に感じていました。その後、転職や異動の際、QAフロー構築や改善の要素として検討材料に上がり、試用やテストランまでするものの本格採用までは至りませんでした。
現在、再び導入を検討しているので、メリット、デメリット、導入への障壁、事例、導入に向いているシチュエーションをまとめたいと思います。
テスト管理ツールとは
事前情報として、テスト管理ツールの主な目的はテスト要件管理からテスト項目管理、バグ管理まで、QAの様々な工程を標準化できるツールとなります。
ツールの違いを具体的に知りたい方はサービスの導入記事など探してみてください。
以下の記事で複数のサービスが存在することがわかると思います。
https://ja.myservername.com/top-11-test-case-management-tools
https://qiita.com/e5rijun/items/a05cd2d7e60e3279c8c8
※複数のサービスの存在はこの種のツールが一定の効果があり、また需要が多いことを示してると思われます
メリット
- レポートの視認性が良くなる
- フォーマットが統一されて閲覧者に優しい
- JIRAからのエクスポートデータを調整してグラフ化したり、人に頼っていた部分を肩代わりしてくれる
- 専用ツールなのでレイアウトが綺麗
- フォーマットが統一されて閲覧者に優しい
- ナレッジを共有しやすい
- チーム毎の独自進化が軽減され情報把握しやすくなる
- テスト結果やテストケースのフォーマット統一が目指せる
- チーム毎の独自進化が軽減され情報把握しやすくなる
- 属人化が軽減する
- テストケースの連続性が担保される
- 観点の知見が散見して作成者や実施者で精度が下がることが減る
- 個人が積み重ねたテクニックも手順や観点で残しやすい
- テストケースの連続性が担保される
- 作業が標準化される
- ワークフローを統一しやすくなり管理コストが低減する
- 業務知見が再利用しやすい
デメリット
- コストが掛かる
- webサービスでアカウント数に応じた価格なので展開する範囲に応じたコストになる
- オープンソースのTestLinkを使った場合はパッケージよりメンテコストが掛かる
- ツールの使い方など一定の学習コストが掛かる
- ツール依存に陥る(かもしれない)
- 一元化した弊害で柔軟性が落ちる可能性がある
- エクスポートなどでテストケースのダウンロードできるが成形し直さないとならない
導入への障壁
- QAへのアウトプット要求が低い
- プロダクトの事情、規模、担当者次第ではあるが要求されるレポート品質はあまり求められていない
- プロダクトの目的はサービスが要件が達成してリリースすることなので、計画通りにリリース出来ている場合にはQA工程や品質保証状況に対して無頓着となりやすく、テスト管理ツールに対しては無駄コストと考える傾向がある
- QAレポートを出す側と受け取る側で合意できるので問題になることが少ない
- リリース判定はテストが完了してバグの取り捨てが行えれば良いので、バグリストさえ纏まっていれば問題が起こりづらい
- QA現場は困っていない
- テスト管理ツールはレポートの質を一定にし、管理や準備のコストダウンなので実施者目線では効果が薄い
- 今のやり方を信じ切っている
- テスト管理ツールを知らない
- 認知されていなかったり、知っていてもそのツールが何をもたらすかわからない
- QAの管理者層とPMやPOで品質を重視する人以外には興味を持ってもらえない
- テスト管理ツールの選定が大変
- ツールの概要などでは差が感じにくい
- 使える機能は似ていてもUIや拡張性など微妙な違いは触らないと分からない
- テストデータ投入や運用テストランなど時間が掛かる
- テストを想定せずに簡単なテストデータを一括で入れただけでは評価し辛く、比較対象が増えると学習にも時間が掛かる。専任でしっかりと腰を据えて評価できるコストが必要となる。
- 組織が大きいほど時間が掛かるが小さくては効果が薄いというジレンマ
- ExcelやGoogle spreadsheetの万能性
- 手間は掛かるがこのツールで何とかなってしまう
断念した例
3年程前の新規プロジェクトにてQAチームを立ち上げた際、管理コストの軽減とモダンなテスト環境を目指しておりました。当時、私はJIRAとの連携に重きをおいていたので、JIRAアドオンで展開しているサービスのZephyr、QMetry、TestRail、qTest、4つのサービスで比較検討しました。
結論としては、JIRAのアドオンに絞ったためツールのカスタマイズ性に乏しいサービスしかなかったことと、社内インフラへのアドオン追加では費用も嵩むことが分かり断念しました。
この時の結論に至るまで、ツール選定や社内相談など2か月くらいかかりそれなりの労力でした。検討開始時点でJIRAとの強い連携を前提に始めたため、前提を覆すことが難しく、また組織的な共感を得る動きをあまりしていなかったため再検討、再選定とはなりませんでした。
導入に向いているシチュエーション
- QA組織や文化が醸成されており、横軸連携できている
- 一元化した進捗管理が望まれている
- リグレッションテストをする機会が多くテストケースを継続してメンテナンスする価値が高い
- テスト結果や項目の分析、比較を繰り返し行いたい
- 品質保証、品質管理目線でのアウトプット要求が高い
- 導入希望者に予算があり、時間的余裕がある
まとめ
テスト管理ツールとはあくまで管理ツールであり、導入したからといって直接的に品質が向上するものではなく、管理者がレポート作成やテスト設計、改修を容易にするためのものです。
導入でのデメリットは少ないですが、プロダクトにとっての劇的なメリットが無く、障壁が多いため実際のQAで採用し辛いかと思われます。
テスト管理ツールに興味を持たれた方。まずは1つのサービスをトライアルでじっくり触ってみてください。そして自分が想像するQAの未来に必要かどうか想像しながらトライアルをしてみると良いと思います。
必要だと思ったなら、導入の障壁をクリアするために所属している組織、プロジェクトのQA意識向上、文化醸成を行っていきましょう。
腰を据えて、より良いQAの未来を目指して。