Software-engineering-se-quality-qa1

提供:Dev Guides
移動先:案内検索

SE品質に関するQ&A#1

質問:ソフトウェアテストプロセスに関する短いメモを書きます。

回答:-ソフトウェアテストは、プログラムの実装で問題を見つけることを目的とするプロセスとして定義できます。 ソフトウェアプロジェクトには、このプログラムの実行が非常に必要です。 IEEEテスト手段によると、

'__ 手動または自動化された手段によるシステムまたはそのコンポーネントの実行または評価のプロセス

  • ソフトウェアテストによって完了した必要なニーズについて監査します。
  • 提案された結果と実際の結果の差の値を取得します。 '__

ソフトウェアテストの簡単なプロセスを作成するには、アクティビティを小さなサイズで分割する必要があります。 通常、この方法が使用され、システムはサブシステムに分割されます。 これらすべてのサブシステムは、システムテストのプロセスが開始される前に個別にテストされます。 ソフトウェアテストのプロセスでは、3つのステップが実行されます。 個々のモジュールは、単体テストのステップでの焦点の主要部分です。 単体テストの後、すべての個々のモジュールが互いに結合されます。 このステップの後、ソフトウェアテストプロセスが開始され、開発者は完全なソフトウェアシステムに焦点を合わせます。

単体テスト

これはソフトウェアテストプロセスの最初のステップであり、このステップでプログラマはモジュールによって実行される機能について確認します。 ソフトウェアには、モジュールと呼ばれる最小単位があります。 ソースコードの単体テストの開発が開始されると、正しい構文が検証されます。 単体テストの主な目標は、動作するかどうかを試して確認できる最小単位を取得することです。 すべてのモジュールが個別にテストされました。 テスト後、個々のモジュールはすべて互いに結合されます。 一部のテストは、ユニットテストプロセスのプロセスで行われます。

  • モジュールのネイチャーテスト-モジュールの性質のテストでは、ユニットテストで指定された状況下で、テストされたモジュールで情報の流れが正であることを確認します。
  • 実行可能なテスト-このチェックアウトポイントには、応答時間、開始時間、最終時間、およびプロセス全体の時間とリンク間の通信を計算する目的があります。
  • ローカルデータ構造テスト-このステップでローカルデータのストレージがチェックされ、すべてのデータと情報が体系的に収集されたかどうかがチェックされます。
  • 境界テスト-このテストは、ソフトウェアによって提供される情報がユーザーによって提供される条件の下で真実であるかどうかを保証するために実行されます。
  • 独立パステスト-このテストでは、指定されたタスクが適切に実行されているかどうかが確認され、正常に動作しています。 このテストの助けを借りてのみチェックできます。
  • エラー処理テスト-プロセス中に発生したエラーが適切に処理されるかどうか。 このテストで提供されるこのタイプの情報。

単体テストのプロセス

単体テストのプロセスでは、他のモジュールに関するデータまたは情報が必要です。 ドライバーとスタブの助けを借りて、簡単に取得できます。 テストを行い、テストされたモジュールにテストを渡すプログラマーは、ドライバーと呼ばれます。 テストされるモジュールとそのモジュールの下位モジュールを置き換えるために使用されるプログラムは、スタブと呼ばれます。 スタブとドライバーは、ユニットテストプロセスの必要性です。 スタブとドライブの量は、シンプルさの質があれば削減できます。

ユニットテストプロセス

統合テスト

  • 外部データが問題を引き起こす可能性があります。
  • モジュール外のテストは期待から外れている可能性があります。
  • 統合結果がそのプロセスまたはモジュールを支持していない可能性があります。

一般に、統合テストでは2つの方法が使用されます。

トップダウン統合テスト

このタイプの方法には幅広い思考領域があります。 最初にテストして統合した後、高レベルのモジュールが必要です。 このアプローチでは、モジュールが置き換えられ、新しいスタブが提供されました。 このプロセスは、すべてのモジュールを統合してテストするまで、そのレベルで継続されます。 このアプローチでは、ドライバーの必要性を低減する高レベルのロジックとデータフローが使用されます。

トップダウン統合テスト

利点

  • 最初にテストされたレベルモジュール。
  • 両方のアプローチ「幅と深さ」がサポートされています。
  • 最大で1つのドライバーが必要です。

引き戻す

  • 低レベルのモジュールは検証に時間がかかります。
  • 呼び出しモジュールに有利なフィードバックのために、適切なデータがスタブに見つかりません。
  • 機能が制限されているため、サポートのレベルは低くなっています。
  • スタブに必要なテスト管理が複雑になります。

ボトムアップ統合テスト

このアプローチにより、低レベルのモジュールが重要になります。 このレベルでは、モジュールが最初にテストされ、最初に統合されたドライバーの助けを借ります。 互いに結合または結合された1つ以上のモジュールを追加できます。 すべてのモジュールの統合後、このプロセスは終了しました。

ボトムアップ統合テスト

利点

  • 実際のモジュールでこのプロセスを開始すると、スタブは不要です。
  • このアプローチの初期段階で検証された低レベルモジュール。

引き戻す

  • ドライバーに必要なテスト管理が複雑になります。
  • 低レベルでサポートされる限定機能のリリース。 *高レベルのモジュール時間の検証。

システムテスト

システムテストプロセスは、ソフトウェアシステムの基本です。 システムテストの主な目的は、ソフトウェアがクライアントの要件を満たすことです。 システムテストは、コンピュータシステムをベースにした完全な演習を含む一連のテスト全体です。 すべてのタスクには個別の目的と一連の異なるテストがあり、システムのすべての部分が体系的な方法と組み合わされて、非常にうまく機能していることは明らかです。 システムテストには3種類のテストがあります。

  1. セキュリティテスト
    • このアプリケーションの助けを借りて、ソフトウェアで作られた保護アプリケーションは、ローカルおよびシステムを使用する権利を持っていない人から安全を提供します。 セキュリティテストの助けを借りて、他のコンピューターはこの情報とその情報にアクセスするメリットを得られません。 . ストレステスト*-ストレステストは通常​​の状態では実行できません。 これにより、システムは需要が急速に増加または減少したときに、その状態で使用します。
    • 入力速度が予想以上になったときに入力機能がどのように実行されたか。
    • クリックに関するデータの過剰な検索とハンティングもストレステストに関係しています。