Web ベースのシステムのテスト Web ベースのシステムの開発では、厳格なプロセスが欠如していると、Web の開発、公開、実装、保守のプロセスで重大な問題が発生し、失敗する可能性が高くなります。 。さらに、Web ベースのシステムはますます複雑になるため、1 つのプロジェクトの失敗が多くの問題を引き起こす可能性があります。これが起こると、Web とインターネットに対する私たちの信頼が取り返しのつかないほど揺るがされ、Web 危機が引き起こされる可能性があります。さらに、Web の危機は、ソフトウェア開発者が直面するソフトウェアの危機よりも深刻かつ広範囲に及ぶ可能性があります。
Web エンジニアリング プロセスでは、Web ベースのシステムのテスト、確認、受け入れは重要かつ困難なタスクです。 Web ベースのシステム テストは、従来のソフトウェア テストとは異なり、設計要件に従って動作するかどうかを確認および検証するだけでなく、さまざまなユーザーのブラウザ上でのシステムの表示が適切かどうかもテストします。エンドユーザーの観点からセキュリティとユーザビリティのテストを実施することも重要です。ただし、インターネットと Web メディアは予測不可能であるため、Web ベースのシステムのテストが困難になります。したがって、複雑な Web ベースのシステムをテストおよび評価するための新しい方法と技術を研究する必要があります。一般的なソフトウェアのリリース サイクルは月単位または年単位で計算されますが、Web アプリケーションのリリース サイクルは日単位、場合によっては時間単位で計算されます。
Web テスターは、より短いリリース サイクルに対応する必要があり、テスターとテスト マネージャーは、従来の C/S 構造とフレームワーク環境のテストから、急速に変化する Web アプリケーション システムのテストへの移行に直面しています。
1. 機能テスト
1. リンク テスト リンクは Web アプリケーション システムの主要な機能であり、ページ間を切り替えたり、アドレスが不明なページにユーザーを誘導したりするための主な手段です。リンクテストは 3 つの側面に分類できます。まず、すべてのリンクが指定どおりにリンクされたページにリンクしているかどうかをテストします。次に、リンクされたページが存在するかどうかをテストします。最後に、Web アプリケーション システムに孤立したページがないことを確認します。ページを指すリンク。正しい URL アドレスを知っている場合にのみアクセスできます。リンク テストは自動化でき、これに使用できるツールが多数あります。リンク テストは、統合テスト フェーズ中に完了する必要があります。つまり、リンク テストは、Web アプリケーション システム全体のすべてのページが開発された後に実行されます。
2. フォームのテスト ユーザーがWebアプリケーションシステム管理者に情報を送信する場合、ユーザー登録、ログイン、情報送信などのフォーム操作が必要になります。この場合、サーバーに送信された情報の正確性を検証するために、送信操作の整合性をテストする必要があります。たとえば、ユーザーが入力した生年月日と職業が適切かどうか、入力した都道府県と都市が一致しているかどうかなどです。デフォルト値が使用されている場合は、デフォルト値が正しいことを確認してください。フォームが指定された特定の値のみを受け入れることができる場合は、それもテストしてください。たとえば、特定の文字のみを受け入れることができます。テスト中にこれらの文字をスキップして、システムがエラーを報告するかどうかを確認できます。
3. Cookie のテスト Cookie は通常、アプリケーション システムにユーザー情報やユーザーの操作を保存するために使用されます。ユーザーが Cookie を使用してアプリケーション システムにアクセスすると、Web サーバーはユーザーに関する情報を送信し、その情報を Cookie の形式で保存します。クライアント コンピューターでは、これを使用して動的ページやカスタム ページを作成したり、ログインなどの情報を保存したりできます。 WebアプリケーションシステムでCookieを使用している場合、Cookieが正しく動作するかどうかを確認する必要があります。テストの内容には、Cookie が機能するかどうか、スケジュールされた時間に従って保存されるかどうか、更新が Cookie に与える影響などが含まれます。
4. デザイン言語のテスト Web デザイン言語のバージョンの違いにより、どのバージョンの HTML を使用するかなど、クライアント側またはサーバー側で重大な問題が発生する可能性があります。この問題は、開発者が全員集まっていない分散環境で開発する場合に特に重要です。 HTML バージョンの問題に加えて、Java、JavaScript、ActiveX、VBScript、Perl などのさまざまなスクリプト言語も検証する必要があります。
5. データベースのテスト Web アプリケーション テクノロジでは、データベースは、Web アプリケーション システムのデータ ストレージの管理、操作、クエリ、およびユーザー要求の実現のためのスペースを提供する重要な役割を果たします。 Web アプリケーションで最も一般的に使用されるデータベースの種類は、SQL を使用して情報を処理できるリレーショナル データベースです。データベースを利用したWebアプリケーションシステムでは、一般にデータ整合性エラーと出力エラーの2種類のエラーが発生することがあります。データ整合性エラーは主にユーザーが送信した間違ったフォーム情報が原因で発生しますが、出力エラーは主にネットワーク速度またはプログラム設計の問題が原因で発生します。これら 2 つの状況については、個別にテストを実行できます。
2. パフォーマンス テスト
1. 接続速度テスト
ユーザーが Web アプリケーション システムに接続する速度は、電話でダイヤルアップするか、ブロードバンド インターネット アクセスを使用するかによって異なります。ユーザーはプログラムをダウンロードするときは長時間待つことがありますが、単にページにアクセスするときはそうではありません。 Web システムの応答時間が長すぎる (たとえば、5 秒以上) と、ユーザーは待ちきれずに離脱してしまいます。また、一部のページにはタイムアウト制限があり、応答速度が遅すぎると、コンテンツを閲覧する前に再ログインが必要になる場合があります。さらに、接続速度が遅すぎると、データ損失が発生し、ユーザーが実際のページを取得できなくなる可能性があります。
2. 負荷テスト
負荷テストとは、Web システムが要件内で正常に動作することを確認するために、一定の負荷レベルで Web システムのパフォーマンスを測定することです。負荷レベルは、ある時点で同時に Web システムにアクセスするユーザーの数、またはオンライン データ処理の量です。例: Web アプリケーション システムは同時に何人のユーザーをオンラインにすることができますか? この数を超えた場合、Web アプリケーション システムは同じページに対する多数のユーザーのリクエストを処理できますか
?テスト
負荷テストはWebシステム上で実施します。リリース後は実際のネットワーク環境でテストします。なぜなら、企業の社内従業員、特にプロジェクト チームのメンバーは常に限られており、Web システムが同時に処理できるリクエストの数はこの制限をはるかに超えるため、結果が正しくなるのはリクエストがインターネット上に公開された場合だけです。信頼できる負荷テストを受け入れました。ストレス テストの実施とは、実際に Web アプリケーション システムを破壊し、システムの応答をテストすることを指します。ストレス テストとは、システムの制限と障害回復能力をテストすること、つまり、Web アプリケーション システムがクラッシュするかどうか、またどのような状況でクラッシュするかをテストすることです。ハッカーは多くの場合、Web アプリケーション システムがクラッシュするまで偽のデータ ペイロードを提供し、システムが再起動されるとアクセスを取得します。 ストレス テストの領域には、フォーム、ログイン、その他の情報転送ページが含まれます。
3. ユーザビリティ テスト
1. ナビゲーション テスト ナビゲーションは、ユーザーがページ内で、ボタン、ダイアログ ボックス、リスト、ウィンドウなどの異なるユーザー インターフェイス コントロール間、または異なる接続ページ間で操作する方法を表します。 Web アプリケーションがナビゲートしやすいかどうかは、次の質問を考慮することで判断できます。 ナビゲーションは直感的ですか? Web システムの主要な部分にはホームページからアクセスできますか? Web システムにはサイト マップ、検索エンジン、またはその他のナビゲーションが必要ですか?ページに情報を入れすぎると、意図したものとは逆の効果が生じることがよくあります。 Web アプリケーション システムのユーザーは目的を重視する傾向があり、Web アプリケーション システムをすぐに調べて、ニーズを満たす情報があるかどうかを確認します。ない場合はすぐに離れてしまいます。 Web アプリケーション システムの構造に慣れるために時間を割こうとするユーザーはほとんどいません。そのため、Web アプリケーション システムのナビゲーション ヘルプはできる限り正確である必要があります。ナビゲーションのもう 1 つの重要な側面は、Web アプリケーション システムのページ構造、ナビゲーション、メニュー、および接続スタイルが一貫しているかどうかです。 Web アプリケーション システムにコンテンツがあるかどうか、およびコンテンツがどこにあるかをユーザーが直感的に理解できるようにします。 Web アプリケーション システムのレベルが決まったら、ユーザー ナビゲーション機能のテストを開始する必要があります。このテストにはエンド ユーザーも参加してもらい、その効果がより顕著になります。
2. グラフィックテスト
Web アプリケーション システムでは、適切な画像やアニメーションが広告の役割を果たすだけでなく、ページを美しくすることもできます。 Web アプリケーション システムのグラフィックスには、画像、アニメーション、境界線、色、フォント、背景、ボタンなどが含まれます。
グラフィックステストの内容は次のとおりです。
(1) グラフィックスに明確な目的があることを確認し、送信時間の無駄を避けるために写真やアニメーションを無作為に積み重ねないでください。 Web アプリケーション システムの画像サイズはできるだけ小さい必要があり、通常は特定のページにリンクして、何かを明確に説明できる必要があります。
(2) すべてのページのフォントスタイルが統一されているかどうかを確認します。
(3) 背景色は文字色および前景色と一致する必要があります。
(4) 画像のサイズと品質も非常に重要な要素であり、一般的に JPG または GIF 圧縮が使用されます。
3. コンテンツ テスト
コンテンツ テストは、Web アプリケーション システムによって提供される情報の正確性、正確性、関連性をテストするために使用されます。情報の正確性とは、情報が信頼できるか、誤った情報が提供されているかを指します。たとえば、製品の価格表では、価格が間違っていると財務上の問題が発生したり、法的紛争につながる可能性があります。情報の正確さは、文法的またはスペルの誤りがあるかどうかを指します。この種のテストは通常、Microsoft Word の「ピンインと文法チェック」機能などのワードプロセッサ ソフトウェアを使用して実行されます。情報の関連性とは、現在の閲覧情報に関連する情報リストまたはエントリが見つかるかどうかを指します。現在のページ、つまり一般的な Web サイトでいうところの「関連記事リスト」です。
4. 全体的なインターフェイスのテスト
全体的なインターフェイスとは、Web アプリケーション システム全体のページ構造の設計を指し、ユーザーに統一感を与えます。たとえば、ユーザーは Web アプリケーション システムを快適に閲覧できますか? 探している情報がどこにあるかを直感的に理解できますか? Web アプリケーション システム全体のデザイン スタイルは一貫していますか?エンドユーザー向けの調査プロセス。一般に、Web アプリケーション システムでは、ホームページ上でアンケートを実施し、エンド ユーザーからのフィードバックを取得します。すべてのユーザビリティ テストには、外部の人 (Web アプリケーション システム開発にまったくまたはほとんど接触していない人)、できればエンド ユーザーの参加が必要です。
4. クライアント互換性テスト
1. プラットフォーム テスト
市場にはさまざまな種類のオペレーティング システムがあり、最も一般的なものは Windows、Unix、Macintosh、Linux などです。 Web アプリケーション システムのエンド ユーザーがどのオペレーティング システムを使用するかは、ユーザー システムの構成によって異なります。このように、同じアプリケーションが一部のオペレーティング システムでは正常に動作する場合もありますが、他のオペレーティング システムでは動作しない場合があります。 したがって、Web システムをリリースする前に、Web システムのさまざまなオペレーティング システムでの互換性をテストする必要があります。
2. ブラウザのテスト
ブラウザは、Web クライアントのコア コンポーネントです。ブラウザのサポートは、メーカーによって Java、JavaScript、ActiveX、プラグイン、または HTML 仕様によって異なります。たとえば、ActiveX は Microsoft の製品で Internet Explorer 用に設計されており、JavaScript は Netscape の製品、Java は Sun の製品などです。さらに、フレームと階層スタイルはブラウザによって表示方法が異なったり、まったく表示されなかったりします。ブラウザが異なれば、セキュリティと Java 設定も異なります。ブラウザの互換性をテストする 1 つの方法は、互換性マトリックスを作成することです。このマトリックスでは、さまざまなメーカーやさまざまなバージョンのブラウザの特定のコンポーネントや設定への適応性がテストされます。
5. セキュリティテスト
Web アプリケーションシステムのセキュリティテストは主に以下のような内容になります。
(1) 現在の Web アプリケーションシステムでは、基本的に登録→ログインという方式が採用されています。したがって、ユーザー名とパスワードが有効か無効かをテストし、大文字と小文字が区別されるかどうか、試行回数を制限するか、ログインせずにページを直接参照できるかどうかなどに注意する必要があります。
(2) Web アプリケーションシステムにタイムアウト制限があるかどうか、つまり、ログイン後一定時間(例えば 15 分)以内にどのページもクリックしなかった場合、再度ログインする必要があるかどうか。それは普通に。
(3) Web アプリケーション システムのセキュリティを確保するには、ログ ファイルが重要です。関連情報がログ ファイルに書き込まれるか、追跡できるかどうかをテストする必要があります。
(4) セキュアソケットを使用する場合は、暗号化が正しいかどうかをテストし、情報の完全性を確認してください。
(5) サーバー側のスクリプトはセキュリティの抜け穴を構成することが多く、これらの抜け穴はハッカーによって悪用されることがよくあります。そのため、サーバー側にスクリプトを許可なく配置・編集できない問題もテストする必要があります。
6. まとめ
本稿では、Web ベースのシステムテスト手法について、機能、性能、使いやすさ、クライアント互換性、セキュリティなどの側面から解説します。 Web ベースのシステム テストには従来のソフトウェア テストとの類似点と相違点があり、ソフトウェア テストに新たな課題をもたらします。 Web ベースのシステムテストでは、設計要件に従って動作するかどうかを確認および検証するだけでなく、さまざまなユーザーのブラウザ上でシステムが適切に表示されるかどうかも評価する必要があります。エンドユーザーの観点からセキュリティとユーザビリティのテストを実施することも重要です。