コンテンツにスキップ

システムテスト

出典: フリー百科事典『ウィキペディア(Wikipedia)』

システムテスト (: system testing)は、完成したソフトウェアシステムに対して行うテストであり、ソフトウェアシステム要件に準拠しているか評価するため、完全な統合環境のシステムで実施されるテストのこと[要出典]総合テスト総合試験も呼ばれる。

システムテストは、統合テストに合格したすべての統合コンポーネントを入力として使用する。統合テストの目的は、一緒に統合されたユニット(集合と呼ばれる)間の不整合を検出することである。システムテストは、「集合体間」内とシステム全体の両方の欠陥を検出する狙いがある[要出典]。コンポーネントまたはシステムのテスト時に生成、観察された動作をテスト結果とする[1]。システムテストでは入出力に注目してテストを行うので、ブラックボックステストである。

システムテストは、機能要件仕様(FRS)またはシステム要件仕様(SRS)、あるいはその両方のコンテキストでシステム全体に対して実行される。システムテストでは、設計だけでなく、動作や顧客の期待についてもテストする。また、ソフトウェアまたはハードウェアの要求仕様で定義されている範囲を超えてテストすることも目的としている[要出典]

アプローチ

[編集]
  • 破壊試験:さまざまな荷重下での試験片の性能または材料の挙動を理解するために、試験片の破損に対して試験が実施される。
  • 非破壊検査:損傷を引き起こすことなく、材料、コンポーネント、またはシステムの特性を評価するための分析手法。
  • フォールト・インジェクション:システムの動作を調べるために異常な方法でシステムにストレスをかけるテスト手法[2] [3] [4]

分野固有のテスト方法

[編集]

ソフトウェアテスト

[編集]

ソフトウェアテストは、テスト対象のソフトウェア製品またはサービスの品質に関する情報を利害関係者に提供するために実施される試験である[5]。 ソフトウェアテストは、ソフトウェアの客観的で独立したビューを提供し、企業がソフトウェア実装のリスクを認識して理解できるようにする。ソフトウェアテストでは、ソフトウェアコンポーネントまたはシステムコンポーネントを実行して、対象の1つ以上のプロパティを評価する。一般に、これらのプロパティは、テスト対象のコンポーネントまたはシステムが、その設計と開発の元になった要件を満たし、あらゆる種類の入力に正しく応答し、許容可能な時間内にその機能を実行し、十分に使用可能で、インストールでき、意図した環境で実行し、利害関係者が望む一般的な結果を達成する。単純なソフトウェアコンポーネントでさえ可能なテストの数は事実上無限であるため、すべてのソフトウェアテストは、利用可能な時間とリソースに対して実行可能なテストを選択するための戦略を採用してテストを行う。

モバイルデバイスのテスト

[編集]

モバイルデバイステストは、携帯電話、PDAなどのモバイルデバイスの品質を保証する。テストは、ハードウェアとソフトウェアの両方で実施される。また、さまざまな手順の観点から、テストにはR&Dテスト、工場テスト、および認定テストという種類がある。モバイルデバイステストでは、実際の携帯電話でのモバイルアプリケーション、コンテンツ、およびサービスの監視とトラブルシューティングからの一連のアクティビティを行う。また、ハードウェアデバイスとソフトウェアアプリケーションの検証と妥当性確認も行われる。

関連項目

[編集]

出典

[編集]
  1. ^ ISTQB Standard glossary of terms used in Software Testing”. 2020年12月21日閲覧。
  2. ^ Moradi, Mehrdad; Van Acker, Bert; Vanherpen, Ken; Denil, Joachim (2019). Chamberlain, Roger; Taha, Walid; Törngren, Martin. eds. “Model-Implemented Hybrid Fault Injection for Simulink (Tool Demonstrations)” (英語). Cyber Physical Systems. Model-Based Design (Cham: Springer International Publishing) 11615: 71–90. doi:10.1007/978-3-030-23703-5_4. ISBN 978-3-030-23703-5. 
  3. ^ Optimizing fault injection in FMI co-simulation through sensitivity partitioning | Proceedings of the 2019 Summer Simulation Conference” (英語). dl.acm.org. 2020年6月15日閲覧。
  4. ^ Moradi, Mehrdad, Bentley James Oakes, Mustafa Saraoglu, Andrey Morozov, Klaus Janschek, and Joachim Denil. "Exploring Fault Parameter Space Using Reinforcement Learning-based Fault Injection." (2020).
  5. ^ Kaner, Cem (17 November 2006). Exploratory Testing (PDF). Quality Assurance Institute Worldwide Annual Software Testing Conference. Orlando, FL. 2014年11月22日閲覧

参考文献

[編集]