テストウェア管理とは?【ソフトウェアテスト基礎知識 】

テスト自動化をサクサク進めるためのWebマガジン「SAKUTES(サクテス)」 » テストウェア管理とは?【ソフトウェアテスト基礎知識 】

テストウェア管理は、テストウェアを管理することです。テストウェア管理はどんな役割を持っているか解説します。

テストウェア管理とは

テストウェア管理は、テストウェアを管理することです。開発プロセスの中では、テスト関連成果物が生成されます。そのテスト関連成果物がテストウェアです。

テストウェア管理では、テストウェアの構成管理を通じ、適切なテストウェアを誰もがいつでも取り出せるようにします。

テストウェアは開発プロセスの中で継続的に使われるため適切な管理が必要です。関係者の間でも共有が求められます。ソフトウェア製品コードとも関連するために、ソフトウェアの構成や変更管理と統合した上での管理が必要です。

テストウェア管理で行われる作業は?

テストウェアはソフトウェアにより内容は変わりますが、よくあるものはあります。テストケースは、テストで求められる前提条件と操作と結果を記載しているものです。テスト条件を満たして管理が必要で、テスト計画、設計、実装、実行、結果、つまりテスト業務全般で利用しますし、作成し、参照します。

自動テストスクリプトは、テストを部分的か完全に自動化したときの、自動実行を定義したスクリプトです。セットアップ/クリーンアップは、テスト実行前後の処理のことです。セットアップはテストのための前提条件を整え、クリーンアップでテスト実行後にリセットをします。

テストデータは、テストを実行する際のデータです。テストデータを整備すれば、テスト精度と結果の均一化が期待できます。データを格納するデータベースのスキーマも含めてテストデータです。

テスト環境の構成は、テストを実行する環境を構成します。たとえば、3層アプリケーションだと「クライアント、アプリケーションサーバ、データサーバ」です。

テスト支援ドキュメントは、テストをスムーズに行い、持続させるためのドキュメントを指します。このようなテストウェアの構成、ソフトウェア構成や変更管理と統合して管理する作業です。

テストウェア管理で使用されるツールは?

テストウェア管理では、構成管理ツールが使われます。たとえば、ソースコード・ドキュメントなどの変更履歴まで含めたバージョン管理システムです。テスト関連ドキュメントや、自動テストプログラムのソースコードは対象システムのバージョンで変わります。そのため、テスト対象システムの各バージョンと関連付けた管理が必要です。

バージョン管理システムとは

バージョン管理システムは、ファイルを「誰が」「いつ」「何を変更したか」という情報を記録しています。記録しておけば、過去の特定の時点の状態を復元でき、変更内容の差分を表示できるのです。それがバージョン管理システムです。バージョン管理システムは、集中管理方式と分散管理方式の2つがあります。

バージョン管理はアジリティを高められるのがメリットです。たとえば、開発中、ソフトウェアにバグを発見すれば、問題発生以前に戻せます。また、問題がなかった時点との違いを分析できるのです。同じ環境を作って問題が再現するか、原因は何か把握しやすくなります。

変更や試験的に機能追加ができるために開発の効率性を高められるのです。変更内容も、バージョン管理システムに記録されるだけで、変更内容をコードに残さないため無駄な肥大化を防げます。

バージョン管理をする対象は、ソフトウェアのソースコードやビルドスクリプト、データベースのスキーマ定義などです。特定の時点のソフトウェアや環境を構築するために必要なもの全般が管理対象といえます。

テストウェア管理を行う時期について

テストウェア管理は、テスト分析をスタートさせるときから、ソフトウェア構成の管理が必要です。テスト分析以降の開発プロセス全般で参照されます。共有と維持のために、テストウェア管理が必要です。

テスト分析や結果分析で頻繁な更新が必要なら、変更を追跡できる状態が求められます。ソフトウェア製品コードとテストウェアの関係は密接ですから、開発担当者が管理や更新をするかもしれません。ソフトウェア製品コードと同じ構成と変更管理が求められます。上記理由から、テスト分析からソフトウェア管理が必要です。

テストウェア管理がうまくいっていない場合のトラブル

テストウェア管理がスムーズでないと、さまざまな問題が発生します。たとえば、テストの設計や実装や実行が共有されません。各担当者が自由にしている状況が生まれ、テストの信頼性や効率性の低下を招きます。

セットアップスクリプトで各担当者が独自のものを作成し、テスト環境も各担当者が独自のやり方でやっていれば問題です。また考えられるトラブルとして、効率の低いテストが繰り返され、予定したテスト実行ができないことも挙げられます。テスト成果物の蓄積もないことで、開発全般が非効率な状態に陥ります。

ノンプログラミングで
⽇本語のサポートが⼿厚い

テスト⾃動化ツールを⽐較
商品名 Ranorex
(ラノレックス)
Autify
(オーティファイ)
商品タイプ パッケージ型

膨大なテスト工数を
削減したい企業向け

SaaS型

初期費用を抑えて
導入したい企業向け

対応テスト
  • デスクトップ
  • webアプリ
  • モバイルアプリ
  • デスクトップ
  • webアプリ
  • モバイルアプリ
実行回数
の制限
制限なし 制限あり

400回/1000回/任意 ※プランにより異なる

日本語サポート 導入後のセミナーが充実! ヘルプサイトが充実!
体験版 14日間 14日間

※Googleで「テスト自動化ツール」と検索し上位表示されたパッケージ型、SaaS型のテスト自動化ツール21種類の中から、(1)クロスデバイス、マルチブラウザに対応し、(2)日本語のサポートがあり、(3)ノンプログラミングでシナリオ作成が可能なツールをピックアップ(2021年11月1日調査時点)。パッケージ型、SaaS型それぞれの代表商品を選出しました。

【代表商品の選出基準】
☆パッケージ型:上記の条件の通り。
☆SaaS型:上記の条件に加え、公式サイト上に導入事例がもっとも多かったツールを選出。