Webシステムのテスト
最近、受注案件や自社のWebシステムをテストする機会が増えてきたのですが、今回はテストの基本的な部分について簡単にまとめたいと思います。
※テストの重要性についてPHPプロ!で連載されている「TOM先生のテスト講座」も併せてご覧ください。
まず、テストを大きく以下の3つに分類し、それぞれについてまとめていきたいと思います。
○ 機能テスト
○ 非機能テスト
○ セキュリティテスト
■ 機能テスト
機能テストは、機能要求が満たされていて仕様通りに実装されているかを検証するためのテストです。
機能テストを行っていく上で様々なテスト方法がありますが、今回は以下のテスト方法が取り上げたいと思います。
・同値分割法:
正当な値と不当な値の両方の代表値を入力してテストを行う方法。(例. 20以下までの入力欄で15と25を入力)
・境界値分析:
正当な値と不当な値に分け、その境界となる値を入力してテストを行う方法。(例. 20以下までの入力欄で20と21を入力)
・デシジョンテーブルテスト:
入力と出力の関係をマトリクス形式で表して行うテスト方法。
・状態遷移テスト:
仕様通りに状態間の遷移が網羅されているかを確認するためのテスト。
・ユースケーステスト:
成功のシナリオ(ユースケース)を作成して、それに沿ってテストを行っていく方法。
■ 非機能テスト
信頼性や安全性のためのテストです。
主に以下のように区分されます。
・性能テスト:
データの増加により性能の劣化やレスポンスの低下などがないかをテスト。
・負荷テスト:
システムに対して大量アクセスを発生させ、そのアクセスに耐えられるかをテスト。
・ストレステスト:
高い負荷や想定を超えたアクセスを限界状態まで与え、データの破壊やシステムがダウンしないかをテスト。
・信頼性テスト:
常に稼働するようなシステムにおいて、一定の時間、システムの機能を使用しダウンしないかをテスト。
・保守性テスト:
機能の追加・修正やシステムの移行などで変更が加わる場合に、動作に問題がないかをテスト。
・ユーザビリティテスト:
ユーザインターフェースに問題(使いやすさやリンク切れ、ブラウザに依存する問題など)がないかをテスト。
■ セキュリティテスト
情報漏洩や不正アクセスなどを防ぐため、脆弱性がないかを検証するためのテストです。
※セキュリティをチェックするためのツールについては、「フリーで使えるセキュリティスキャナ・ツールまとめ」もご覧ください。
今回はすごく簡単にまとめましたが、次回機会があればもう少し詳しく書いていきたいと思います。
※テストの重要性についてPHPプロ!で連載されている「TOM先生のテスト講座」も併せてご覧ください。
まず、テストを大きく以下の3つに分類し、それぞれについてまとめていきたいと思います。
○ 機能テスト
○ 非機能テスト
○ セキュリティテスト
■ 機能テスト
機能テストは、機能要求が満たされていて仕様通りに実装されているかを検証するためのテストです。
機能テストを行っていく上で様々なテスト方法がありますが、今回は以下のテスト方法が取り上げたいと思います。
・同値分割法:
正当な値と不当な値の両方の代表値を入力してテストを行う方法。(例. 20以下までの入力欄で15と25を入力)
・境界値分析:
正当な値と不当な値に分け、その境界となる値を入力してテストを行う方法。(例. 20以下までの入力欄で20と21を入力)
・デシジョンテーブルテスト:
入力と出力の関係をマトリクス形式で表して行うテスト方法。
・状態遷移テスト:
仕様通りに状態間の遷移が網羅されているかを確認するためのテスト。
・ユースケーステスト:
成功のシナリオ(ユースケース)を作成して、それに沿ってテストを行っていく方法。
■ 非機能テスト
信頼性や安全性のためのテストです。
主に以下のように区分されます。
・性能テスト:
データの増加により性能の劣化やレスポンスの低下などがないかをテスト。
・負荷テスト:
システムに対して大量アクセスを発生させ、そのアクセスに耐えられるかをテスト。
・ストレステスト:
高い負荷や想定を超えたアクセスを限界状態まで与え、データの破壊やシステムがダウンしないかをテスト。
・信頼性テスト:
常に稼働するようなシステムにおいて、一定の時間、システムの機能を使用しダウンしないかをテスト。
・保守性テスト:
機能の追加・修正やシステムの移行などで変更が加わる場合に、動作に問題がないかをテスト。
・ユーザビリティテスト:
ユーザインターフェースに問題(使いやすさやリンク切れ、ブラウザに依存する問題など)がないかをテスト。
■ セキュリティテスト
情報漏洩や不正アクセスなどを防ぐため、脆弱性がないかを検証するためのテストです。
※セキュリティをチェックするためのツールについては、「フリーで使えるセキュリティスキャナ・ツールまとめ」もご覧ください。
今回はすごく簡単にまとめましたが、次回機会があればもう少し詳しく書いていきたいと思います。
コメントフォーム
トラックバック
最近の記事
- もうすぐ健康診断があるんだ・・・ [2010年09月02日 : 阿部恵]
- Photoshopで壁紙を作りながら、基本的な使い方を覚える [2010年09月01日 : 鴨田健次]
- はじめての共同作業 Canvas編 (node.js + websocket) [2010年09月01日 : 中川善樹]
- 「PHP×Flex(後編)」PHPテクニカルセミナー(無料)第4弾の募集を開始しました!! [2010年08月26日 : 和田記光]
- 【HTML5】Canvasでお絵かきしてみた(前編) [2010年08月25日 : 橋本章史]
- MacにgroongaのMySQL用ストレージエンジン [2010年08月23日 : 笹亀弘]
- Appleのサイトで見たiPhone4をFireworksで描いてみました-1/2 [2010年08月19日 : 和田記光]
- iPad版の会社紹介を作ってみました [2010年08月19日 : 小林有佳]
- iPhoneアプリ開発開始時に気をつけるべきファイルの取り扱い (2) [2010年08月19日 : 亀本大地]
- symfonyセミナー動画無料公開! [2010年08月13日 : 岡本雄樹]



最近のコメント