static testing dynamic testing difference between these two important testing techniques
テストは 検証と妥当性確認 。テストを完了するには2対かかることは誰もが知っています。
今日の記事では、いくつかの光を当てます 静的テスト 。検証とも呼ばれます。私たちはそれについてすべてを学び、これに特に重点を置きます。 動的テスト 多くの場合、最大の注目を集め、それを詳述する無数の記事があります。
ただし、静的テストに関する議論は、対応する動的テストの意味の説明なしには完了しません。動的テストは検証であり、もう1つの「V」です。
動的テストは、実際のシステムで作業している場合です(を表すアーティファクトやモデルではありません) システム)、入力を提供し、出力を受信し、出力を期待される動作と比較します。これは、エラーを見つけることを目的としたシステムでの実践的な作業です。
このプロセス中に、テストに関する次の2つの一般的な誤解が正しくないことを理解します。
- テストは最後に行われる活動です
- それはテスターによってのみ実行され、残りのテスターは何の関係もありません
クイックリファレンスから始めましょう vモデル :
- に 左側 Vモデルの中には、QAチームによって実行されないアクティビティがあります。
- に 右側 、開発チームが担当するもの、テスターが担当するもの、ユーザーが担当するものがあります。
始めましょう– 要件の収集 。これは、ビジネスアナリストおよびその他の上位レベルの管理者によって実行されます。このフェーズの出力ドキュメントは、ビジネス要件ドキュメントであるBRDです。
次の段階は システム設計 。システム設計は、FRD(機能要件ドキュメント)でビジネス要件が機能要件に変換されるフェーズです。
翻訳が行われているとき、開発チーム(このステップの主なアクター)は、BRDドキュメントをステップごと、ページごと、および行ごとに調べます。主な目標は翻訳のためにビジネス要件を消費することですが、BRDドキュメントは順番にレビューされています。
例: これは、セキュリティを重視する銀行サイトのBRDだとしましょう。 BRDには、オンラインバンキングサイトでアカウントを作成するさまざまなユーザーのパスワードルールについて説明するセクションがあります。ルールの1つは次のとおりです。 ユーザーは、他のアカウントで使用しているパスワードを使用できません。
これは実行できません。サイトはユーザーがログイン資格情報を設定する方法を提案するだけで、方法がないため、この制限を課すことができます。したがって、この要件は実現可能ではありません。つまり、ソフトウェアを介して達成することはできません。
この例に基づいて、次の点を考えてみましょう。
- この要件は構築可能ではなく、したがってテストできない(つまり、実行不可能である)とどのように判断されますか?銀行のサイトがあり、ログインとパスワードを設定しましたか?それから、これが不可能であることに気づきましたか?いいえ、これは単にBRDのレビューと、もちろんいくつかの一般的なビジネスセンスに基づいています。
- この要件をテストしていますか?確かに、しかし純粋に理論的、概念的な意味に基づいていますが、実際のAUT(テスト中のアプリケーション)には基づいていません。
- このテストの物理的な形式は何ですか? -BRDの簡単な読み物または正式なレビュー、あるいはビジネス要件のさらに正式な実現可能性分析。
私たちの誤解に立ち返る:
- 誰がBRDのこのレビューを実行していますか? –主に、製品の作成を担当する開発チームおよびその他の技術チーム。テスターではありません。
- このレビューは製品作成の最後に行われていますか?いいえ、プロジェクト開発のごく初期の段階です。したがって、終わりだけではありません。
静的テスト手法:
要約すると、静的テストは、次の方法に従うソフトウェアテストの検証部分です。
- ドキュメントレビュー
- ウォークスルー
- 検査
- ソフトウェアが本来あるべきものであるかどうかを判断するための実現可能性分析またはその他の形式の分析
- コードレビュー
CSTE CBOKを引用するには、 「検証は、「適切なシステムを構築しましたか?」という質問に答えます。検証では、「システムを正しく構築しましたか?」
Chromeでswfを実行する方法
以下は、Vモデルの左側で行われるすべての静的テストアクティビティです。
SDLCステージ | 出力 | 確認します | 俳優 |
---|---|---|---|
ビジネス要件の収集 | BRD(ビジネス要件文書) | スコープドキュメント(ある場合) | |
システム要件の設計 | FRD(機能要件文書) | BRDをレビュー/検証します | 開発、技術チーム |
技術要件の設計 | TDD(テクニカルデザインドキュメント) | FRDをレビュー/検証します | 開発、技術チーム |
デザイン(コード) | コード | TDDをレビュー/検証します。完全性、フォーマットなどについての開発チームによるコードレビュー。 | 開発、技術チーム |
注意: この情報は、手順がほぼ同じになるため、開発方法論に従ったプロジェクトについて推定できます。
Vモデルの右側には検証があります。
動的テスト手法:
ユニット、統合、システム、およびUATフェーズはすべて、開発のさまざまな段階でAUTで実行されるテストを作成することを目的としています。テストはさまざまな種類の要件を検証することを目的としていますが、すべて同じテストです。
したがって、AUTで実行する必要のあるテストがあり、その出力がテストの結果(成功したかどうか)を判断するために必要な、あらゆる形式のテスト–それは検証です。
さて、Vモデルの右側(RHS)には検証がまったくないことを一般化しても大丈夫ですか?答えはいいえだ。
RHSの各段階で作成されるすべてのテストは、テストの作成/終了段階で数回レビューされます。テストドキュメントのレビューの詳細なプロセスは次のとおりです。 https://www.softwaretestinghelp.com/test-documentation-reviews/
RHSの場合:
- テストとコードは、開発者によってユニット/統合テスト段階でレビューされます。
- システムテストは、ドキュメント作成中にピアレビューを受け、完了時に開発チームとビジネスアナリストによるレビューを受けます。
- UATテストは、UATが開始される前に、QAチームとユーザーによるレビューを受けます。
結論
結論として、静的テストは、ビジネス要件レビュー、機能要件レビュー、設計レビュー、コードウォークスルー、およびテストドキュメントレビューの形をとる重要なテスト手法です。これは継続的な活動であり、テスターだけが行うものではありません。
検証、動的テストの部分はより実践的であり、アーティファクトや製品の表現ではなく、製品自体で行われます。テストケース/条件の特定、カバレッジの考慮、実行、および欠陥の報告の非常に正式なプロセスはすべて、動的なテスト方法を示しています。
著者について: この記事はSTHチームメンバーのSwatiSによって書かれました。
静的および動的テストのトピックに関するコメント、質問、および経験を共有してください。