テスト実行は、テストを通じ、動作確認や過負荷が起きた状態の確認、セキュリティの脆弱性を確認する作業です。
テスト実行とは、テスト作業のことです。テストケースに記載された手順通りに実施し、結果を確認します。テスト担当者が自分でテスト手順をひとつずつしながら、機能テストを手動でするならテスト手動実行です。
手動ではなく、ツールを活用し、テスト実行を自動でするならテスト自動実行と呼んでいます。どちらもテストは一回だけで終わりません。システムやソフトウェアの開発プロセスの中で何度も繰り返します。
テスト結果がテストケースに記載された期待値と違うなら、不具合情報を開発者に報告という流れです。開発者はどんな不具合か、正確に把握するためにも具体的な記述が求められます。同時に不具合が起きないテスト条件の報告も必要です。
テスト実行でよく実施される作業は、リグレッションテスト、性能テスト・ストレステスト、セキュリティテストです。リグレッションテストは、ソフトウェアに機能を追加したり、問題修正をしたりして既存コードに変更があっても、期待する振る舞いは変わらないか確認します。
性能テスト・ストレステストは、ソフトウェアに対し、性能要求を満たしているか確認するテストです。トランザクション辺りの、スループットやレスポンスタイムの計測、複数ユーザーによっていくつもの処理がされている高負荷状態でも、性能にボトルネックが出ないか検証します。セキュリティテストは、ソフトの脆弱性を確認するテストです。たとえば、実際に稼働しているソフトウェアに対してアタックをかけて、問題がないか、考えるべき点はないか検証します。
テスト実行で、よく使われるツールがあります。各ツールがどんな働きを持っているのか解説します。
システム中の、個々のクラス、関数の動作をチェックします。各クラスや関数に対し、動作をチェックするためのプログラムを作り実行し、正常に動作するかチェックという流れです。動作チェックのプログラムは、何回でも自動実行でき、同じテストを繰り返すとき助けになります。
ユーザーのマウスやキーボードの操作をまず記録し、何回でも再生するためのツールです。何回も最初から同じことを繰り返さなくても済みます。担当者の負担を軽減できますし、作業を効率化できるのが大きなメリットです。
webサーバに大量のアクセスがあったとき、システム性能がどうなるか測定します。擬似的にサーバに対する大量アクセスがあれば負荷がかかります。そのときシステム応答の時間はどうなるのか測定したいときに役立つツールです。
システム脆弱性をチェックします。システム脆弱性は人間でもチェックできますが、そのすべてをカバーしたくても限界はあります。ただ、1つでも脆弱性があるとセキュリティにとっては重大な問題です。そのため、セキュリティテストツールでカバーします。
テスト実行では、多くの自動テストを実施します。多くの自動テストがあるということは、スケジュール管理も大変です。テスト結果の把握も簡単ではありません。基本的に自動テストツールに付属されています。ただ、オープンソースのツールだと、単体では機能しないものもあるため必要です。
テスト実行を行う時期はテスト対象のソフトウェア構築後です。設計通りに実装できているか、機能確認します。開発だけに限らず、保守フェーズでも活用することが多いです。
テストを実行し、エラーの有無と動作確認、テスト結果の内容が期待した通りか表示を返してきたか検証する際にも使われます。
性能テストやストレステストは、システムテストのタイミングで実行することが多いです。性能確認は、ユニットや統合のテストでも確認します。ただ、最終的な性能に関してもチェックは必要です。
統合テストで基本的な機能を確認します。その後、複数コンポーネントを統合した状態で、性能面でボトルネックといった問題がないか検証するために実施します。
テスト実行がうまくいっていないと、効率性の低下や品質の低下が生じます。何度も同じテストをするため、工数の増加に伴い、担当者の負担は大きくなるでしょう。時間的な制約により夜間テストができない可能性もあります。
人間の負担が大きくなればミスも増えます。実行漏れのリスクも高くなるのです。性能テストが甘ければ、リリースをしたあとに重大なトラブルが見つかる可能性があります。そうなると信頼性の低下につながるのです。
急激な負荷でシステムダウンが起きればなおさら信頼性は落ちます。セキュリティテストが不十分なら、不正アクセスが起きてデータ漏えいにもつながるのです。当然、世間や顧客からの信頼は失墜します。損害は大きく、以降の売上にも影響が出てくるのです。
商品名 | Ranorex (ラノレックス) |
Autify (オーティファイ) |
---|---|---|
商品タイプ | パッケージ型
膨大なテスト工数を |
SaaS型
初期費用を抑えて |
対応テスト |
|
|
実行回数 の制限 |
制限なし |
制限あり
400回/1000回/任意 ※プランにより異なる |
日本語サポート | 導入後のセミナーが充実! | ヘルプサイトが充実! |
体験版 | 14日間 | 14日間 |
※Googleで「テスト自動化ツール」と検索し上位表示されたパッケージ型、SaaS型のテスト自動化ツール21種類の中から、(1)クロスデバイス、マルチブラウザに対応し、(2)日本語のサポートがあり、(3)ノンプログラミングでシナリオ作成が可能なツールをピックアップ(2021年11月1日調査時点)。パッケージ型、SaaS型それぞれの代表商品を選出しました。
【代表商品の選出基準】
☆パッケージ型:上記の条件の通り。
☆SaaS型:上記の条件に加え、公式サイト上に導入事例がもっとも多かったツールを選出。