QualityForward Blog

ベリサーブのテストマネジメントクラウド、QualityForward の最新情報、ちょっとした使い方のTipsなどをお届けいたします

【導入事例の紹介】 QualityForwardで手動テストと自動テストを一元管理しよう <前編>

目次

はじめに

皆さんはじめまして! ベリサーブ研究企画開発部・自動テスト推進課の薮崎です。

今回機会をいただき、「QualityForwardで手動テストと自動テストを一元管理しよう」というタイトルで シリーズ記事を寄稿させていただくことになりました。

我々自動テスト推進課は自動テストの効果的な導入・運用のご支援をさせていただいているのですが、 中でも最近「手動テストと自動テスト全体を俯瞰・最適化したい」というご要望をいただくことが増えてきています。 これを実現するためには、自動テスト結果をテスト管理ツールに自動で連携することが必要不可欠になります。

このシリーズ記事では弊社が提供しているテスト管理ツールである「QualityForward(以下QF)」と、 自動テスト結果の連携の実現方法や、最新自動テストSaaSとの連携方法に関してご紹介します。

シリーズ記事は<前編>、<中編>、<後編>の3部構成となっており、 <前編>では手動テストと自動テストを一元管理するメリットと、実現手段の全体像に関して解説します。

手動テストと自動テストを一元管理する3つのメリット

いきなり「手動テストと自動テストを一元管理する」というアイデアの実現手段をお伝えする前に、 まずは手動テストと自動テストを一元管理するメリットについて簡単に触れておきたいと思います。

手動テストと自動テストを一元管理するメリットは多いですが、代表的なものに以下の3点が挙げられるでしょう。

  1. 複数の成果物を閲覧する必要がなくなる
  2. テストの全体像を把握しやすくなる
  3. 手動テスト/自動テストが担当者に閉じた活動から、チーム全体の活動へと広がるキッカケになる

複数の成果物を閲覧する必要がなくなる

多くの現場では手動テスト結果はエクセルで、自動テスト結果は専用のレポーティングフレームワークで別々に管理されているのではないでしょうか。 これら成果物を一つにまとめることで、複数のファイルやシステムを切り替えずともテスト結果を確認でき、単純に作業効率が上がることが第一のメリットです。

テストの全体像を把握しやすくなる

また、手動テストと自動テストの結果だけでなく、手順や期待値を含めたテストケース群全体(テストスイート)を一挙に見られることから、 テストの全体像を把握しやすくなることもメリットといえます。

テスト内容の重複を見つけテストスイートを最適化したり、今ある手動テストケースを自動化できないか検討したりする良い機会となるはずです。

手動テスト/自動テストが担当者に閉じた活動から、チーム全体の活動へと広がるキッカケになる

最後に見逃せないメリットとして、手動テストと自動テストの両方がひとつのテストスイート上で管理されることで、 チーム全体が手動テスト・自動テストの両方に意識を向けるようになるという点があります。

特に手動テスト担当者と自動テスト担当者が分かれているチームにおいては、自らの担当範囲外のテスト内容について詳しく知らないケースも少なくありません。 *1

手動テストと自動テストが同一のテストスイートで管理されていれば関係者全員が日常的にその記載を眺めることになります。 このことがお互いが何をしているのかを知るキッカケとなり、担当者間やチーム全体でのテスト戦略・設計の最適化につながる可能性が生まれます。

実現手段について

ここまでは手動テストと自動テストを一元管理するメリットについて解説しました。 ここからは、具体的な実現手段についてご紹介していこうと思います。

実現手段は実現の全体像に関するパートと、個別具体的な実装に関するパートの2つからなります。 <前編>では前者、実現の全体像に関して解説し、後者に関しては<中編>にてご紹介しようと思います。

業務フローの検討

手動テストと自動テストの一元管理を実現するには、まずは業務フローの検討が必要です。 自動テスト結果の連携に関する部分では、以下のような業務フローで実現ができるでしょう。

  1. テスト管理ツール上で自動テストを格納するチケット/列などを定義する
  2. 自動テストを実行する
  3. 自動テスト結果をテスト管理ツールに連携する
  4. テスト管理ツール上で自動テスト結果を確認する

ここでポイントとなるのは1と3です。以下では3のシステムアーキテクチャについて説明します。(1に関しては<中編>で説明します。)

システムアーキテクチャ

自動テスト結果をテスト管理ツールに連携するためにはそのためのシステムが必要になってきます。 以下ではテスト管理ツールにQFを採用することを前提として話を進めようと思います。*2

自動テストの結果をQFに連携させるシステムは以下のアーキテクチャで構成されます。

f:id:qf_support:20210524101720p:plain

テスト管理ツール

今回はQFを採用します。*3

CIツール

CIツールは現在該当するプロジェクトで運用されているもの、あるいは社内で標準的に運用されているものに合わせるとよいでしょう。

実行系

ここでいう実行系は「①自動テストの実行システム」と、「②QFへの結果連携システム」の両方を内包しています。

①に関しては既にある自動テストの実行システムで問題ありません。

②に関しては、①でスクリプトベースの自動テストシステムを採用しているのか、 実行エンジンが内包された自動テストツールを採用しているのかで多少考慮する事項は変わるものの、 基本的には①と同じプログラミング言語か、担当者の方が使い慣れている言語で連携スクリプトを記載するとよいでしょう。

サンプルスクリプトのご紹介

さてここからは連携スクリプトの具体的な実装のご紹介になりますが、ここから<中編>に譲りたいと思います。次回更新をお楽しみに!

なお、先んじて具体的な実装を知りたい方に向けて、公式サンプルスクリプトを公開しました。<GitHubへのリンク> ご興味ある方は是非ご覧ください。それでは!

*1:残念ながら、我々のような第三者検証会社がテストを部分的に請け負う際に発生しがちな問題です…

*2:テスト管理ツールExcelを採用しても、TestRailなど他のテスト管理ツールを採用しても、基本的には同じシステムアーキテクチャで実現できるはずです。

*3:ちなみに競合のTestRailでも自動テスト結果を統合した事例があります。 QFブログで書くと怒られるかもしれないですが、技術的には非常に参考になると思いますのでご紹介しておきます。 blog.testrail.techmatrix.jp