システム開発におけるテスト環境について解説!テストの流れ5ステップ

目次

テスト環境とは何か?

テスト環境とは、開発したシステムやアプリケーションが正しく動作するかをテストするための環境です。

開発したシステムやアプリケーションをテスト環境でテストして、不具合が見つかった場合はバグ取りをし、バグがなくなるまでこの作業を繰り返します。バグが見つからなくなったら、検証した後にステージング環境へとデプロイします。

機密性の高い情報を扱う場合があり、外部ではなく自社でテスト環境を用意する場合もあります。

なぜテスト環境が必要なのか

開発したばかりのプログラムには誤作動を起こす危険があり、他のプログラムに悪影響を及ぼす可能性があるので、テスト環境でのテストが必要になります。

システムやアプリケーション単体で問題なく動作しても、異なる環境下では思いがけない動作で事故を起こす可能性があるため、本番に近い環境でテストします。

本番環境に近いテスト環境は、事故を未然に防ぐために必要です。

テストの種類3つ

テスト環境では、開発環境で開発したシステムやアプリケーションのテストを実行しており、大きく分けて3つの種類があります。

具体的には、プログラムの一部を動作確認する単体テスト、プログラム全体を動作確認する結合テスト、最後に本番とほぼ同じ環境で動作確認する総合テストの3つです。

ここでは、テスト環境でのテストの種類を、3つご紹介していきます。

テストの種類1:単体テスト

1つ目のテストの種類は、単体テストです。

単体テストはユニットテストとも言われ、関数やメソッドなどのプログラムを構成する小さなユニットが、それぞれ正しく機能しているかどうかを検証するためのテストです。

単体テストは、コード作成時などの比較的早い段階で実行されることが多く、問題のある箇所や原因の特定が容易にでき、開発全体のバグ修正の効率を高められることでしょう。

テストの種類2:結合テスト

2つ目のテストの種類は、結合テストです。

結合テストとは、複数のプログラムやモジュールを同時に稼働させ、モジュールが結合した際に正しく動作するかどうかを検証するためのテストです。

結合テストは、単体テストをすべて完了させた状態で実行し、機能や操作の組み合わせが正しいか、仕様書通りに機能しているかなどについて、実際の業務で使用することを想定しながら検証します。

テストの種類3:総合テスト

3つ目のテストの種類は、総合テストです。

総合テストはシステムテストとも言われ、構築したシステムやアプリケーション全体が正しく機能しているか、機能や性能が仕様書通りに実装できているかなどについて検証するテストです。

総合テストは、単体テストと結合テストの実行後に、本番に近い環境で実施されるテストで、セキュリティに関する機能やシステムの使いやすさなどについてテストします。

テスト環境でテストする主要5項目

テスト環境ではさまざまなテストが実行され、主に5つの項目について検証されます。

具体的には、求められている機能が正しく動作するか、UIは使いやすいか、セキュリティに問題はないか、負荷をかけたときにどの程度安定動作するか、予期せぬエラー・バグが起こらないか、の5つの項目についてテストします。

ここでは、テスト環境でテストする主要5項目について紹介していきます。

テスト環境でテストする主要項目1:求められている機能が正しく動作するか

1つ目のテスト環境でテストする主要項目は、求められている機能が正しく動作するかどうかです。

システムやアプリケーションを製品として納品するためには、求められている機能が正しく動作する必要があります。

単体テスト・結合テスト・総合テストの段階ごとに、開発やテストの仕様書に基づいてテストを実施し、バグの有無や求められている機能が正しく動作しているかどうかについて検証します。

テスト環境でテストする主要項目2:UIは使いやすいか

2つ目のテスト環境でテストする主要項目は、UIは使いやすいかどうかです。

UIが使いやすいかどうかについて検証するテストのことを、ユーザビリティテストと呼び、主に総合テストの段階でテストします。

システムやアプリケーションの操作性や学習性、見やすさやわかりやすさなどの観点からUIを評価し、ユーザーにとって魅力的で使いやすいような製品になっているかどうかをテストします。

テスト環境でテストする主要項目3:セキュリティに問題はないか

3つ目のテスト環境でテストする項目は、セキュリティに問題はないかどうかです。

不特定多数のユーザーの利用が想定されるシステムやアプリケーションを製品化する際に、外部からの不正アクセスや情報漏えいを防ぐためのセキュリティを構築する必要があります。

主に総合テストの段階でセキュリティテストを実行し、セキュリティに関する機能が仕様書通りになっているかどうかをテストします。

テスト環境でテストする主要項目4:負荷をかけたときにどの程度安定動作するか

4つ目のテスト環境でテストする主要項目は、負荷をかけたときにどの程度安定動作するかどうかです。

質の良いシステムやアプリケーションを構築するためには、ある程度の負荷をかけても安定して動作させる必要があります。

負荷テストでは、システムに大量のアクセスを発生させたり、一定時間連続して稼働させたりして、システムに負荷をかけても安定して動作するかどうかをテストします。

テスト環境でテストする主要項目5:予期せぬエラー・バグの検証

5つ目のテスト環境でテストする主要項目は、予期せぬエラー・バグの検証です。

システムやアプリケーションの開発や修正をした際に、新たな不具合が生じることがあり、そういった予期せぬエラーやバグに対処する必要があります。

システムに修正を加えた際に、新たな不具合が発生したり、修正済みのエラーやバグが発生したり、前のバージョンに戻ったりしていないかどうかを検証するためにテストします。

WordPressでのテスト環境の作り方4つ

WordPressは便利なWebサイト作成ツールで、テスト環境を作成できます。

テスト環境を作るためには「Local by Flywheel」を使用します。ここでは、WordPressでのテスト環境の作り方4つを紹介していきます。

テスト環境の作り方1:「Local by Flywheel」を使用する

1つ目のテスト環境の作り方は「Local by Flywheel」を使用することです。

「Local by Flywheel」は、パソコン内のローカル環境で疑似的なWordPressを構築するツールで、本番の環境を想定したテスト環境を構築できます。

「Local by Flywheel」を使用して不具合を出しても、本番サイトに影響はないので、気兼ねなくテストとバグ修正ができます。

テスト環境の作り方2:「Local by Flywheel」のインストールの仕方

2つ目は「Local by Flywheel」のインストールの仕方です。

「Local by Flywheel」はプラグインではないので、WordPressからではなく配布サイトからファイルをダウンロードして、インストールする必要があります。

配布サイトでダウンロードする際は、メールアドレスなどの項目を記入する必要があります。

テスト環境の作り方3:インストール後はテスト環境の構築に入る

3つ目は、インストール後はテスト環境の構築に入ることです。

ファイルのインストールが完了したら、テスト用のドメイン名とサーバの設定をしてテスト環境の構築に入ります。

サーバは「Preferred」と「Custom」から選べ、PHPのバージョン、サーバの選択、MySQLのバージョンなどの設定を変更する際は「Custom」を選択する必要があります。

テスト環境の作り方4:ユーザー名とパスワードを発行する

4つ目は、ユーザー名とパスワードを発行することです。

テスト環境を構築したら、ユーザー名とパスワードを発行してテスト環境を構築できます。その後、WordPressの管理画面に移動してサイトの編集をします。

設定したIDとパスワードは、他のテスト環境でも利用可能になるよう設定でき、複数のテストも簡単に構築できることでしょう。

テスト環境におけるテストの流れ5つ

さまざまな工程を通してテストを実行しますが、主に5つの工程に分けられます。

具体的には、テストの計画を作成、テストの工程を仕様書にまとめる、可能な限り本番環境に近いテスト環境を構築、仕様書に沿ったテスト作業、テスト工程の自動化、の流れでテストを実行します。

ここでは、テスト環境におけるテストの流れ5つを解説していきます。

テスト環境でのテストの流れ1:テストの計画を作成

1つ目のテストの流れは、テストの計画を作成することです。

納期までに製品を完成させて納品するために、テスト環境でテストを実行する際の実施方法やスケジュールを決め、テスト計画書を作成します。

テスト計画書では、テストの背景や目的、テスト対象、スケジュールと工数、管理計画などについて検討して決めていきます。

テスト環境でのテストの流れ2:テストの工程を仕様書にまとめる

2つ目のテストの流れは、テストの工程を仕様書にまとめることです。

テスト計画書を基に、具体的なテストシナリオや確認事項に注意して、利用者目線でテストの工程を仕様書に書きまとめます。

テスト計画書で決めた計画通りにテストを実行するために、テストの観点や対象の詳細化、使用するテスト技法と適用範囲、テストの実施手順などの内容について検討して決めていきます。

テスト環境でのテストの流れ3:可能な限り本番環境に近いテスト環境を構築

3つ目のテストの流れは、可能な限り本番環境に近いテスト環境を構築することです。

テストの仕様書を書きまとめたら、仕様書を参考にして、可能な限り本番に近いテスト環境を構築します。

本番に近いテスト環境を構築することで、事前にアップデートなどを検証でき、いきなり本番環境で実行するリスクを軽減できます。

テスト環境でのテストの流れ4:仕様書に沿ったテスト作業

4つ目のテストの流れは、仕様書に沿ったテスト作業をすることです。

仕様書を参考にテストを実行し、バグや不具合が発生したら管理表を作成します。基本的に修正は開発者に依頼して対応します。

バグや不具合の修正に応じてシステムの操作マニュアルを編集することもあり、本番環境にシステムを移行するために、あらゆる問題点を洗い出します。

テスト環境でのテストの流れ5:テスト工程の自動化

5つ目のテストの流れは、テスト工程の自動化です。

テストの自動化は、テストの計画・設計の段階で織り込む必要があり、テストの仕様書に沿って工程の自動化を実行します。

主にテストの実行を自動化し、自動でテストを実行するシステムが対象の変化などに対応できるように、継続的なシステムの開発・修正が必要です。

テスト環境でテストすることで本番環境でのエラーを防ごう

ここまで、テストの種類やテスト環境でテストする項目、テストの流れなどについて紹介してきました。テスト環境を構築することで、本番環境を想定したテストの実行ができます。

アプリケーションやシステムの開発・テスト業務をしている方は、ぜひ本番環境でのエラーを防げるようなテストができるテスト環境を構築してみてください。