統合テスト (例付き)

以前に、ユーザー インターフェイス (UI) のテストは (時間の点で) コストがかかるため、より多くのシステム統合テストを作成する可能性について簡単に説明しました。したがって、この記事ではシステム統合テストを紹介します。

UI テストは、ボタンのクリック、ページのスクロール、表示されたデータが正確であることを確認するためのデータの確認など、手動でテストしていた手順を自動化できるため、常に楽しく記述できます。自動テストの実行をスケジュールし、レポートが生成されるのを待ち、テスト シナリオが失敗したかどうかを確認するだけです。

アプリケーションの機能が増えると、より多くの UI テストが作成されます。UI テストのセットを完了するには、不安定なテスト、テスト シナリオの高度なメンテナンス、およびより長い実行時間が必要です。悪夢が起こったとき、私たちは別の角度から問題を解決しようとします。私たちは何をすべきで、何をすべきではなかったのでしょうか? テスト データのさまざまな順列 (たとえば、さまざまなデータ セットを取得するさまざまな種類のログイン) を処理する UI テスト — これらすべてを代わりにシステム統合テストで実行できますか?

統合テストは、さまざまなモジュールが必要な機能に従って適切に連携できることを確認するために実行されます。これは、API または UI テストの統合、あるいはその両方である可能性があります。

統合テストの作成を開始するには、アプリケーション フローをよく理解する必要があります。では、オンライン ライブラリから本を借りる場合の次の例を見てみましょう。API の統合と UI テストの両方の観点から検討することに注意してください。

UI テスト シナリオ: ログインが成功したときにユーザー アカウントの詳細を確認する

API の統合は次のようになります。

UI テスト シナリオ: ログインが成功したときに、ユーザーの本の貸与の詳細を確認する

API の統合は次のようになります。

次に、API の統合テストをさらに作成し、UI テストを減らす方法を見ていきます。オンライン図書館システムには次の要件があると仮定します。

  • 2 種類のメンバーシップ: {ベーシック、プレミアム}
  • 一部の書籍はプレミアム タイプのみで利用可能

UI テスト シナリオ: ログイン成功時に書籍を表示する

さまざまなメンバーシップ タイプに対して (UI テストで) テスト シナリオを複製する代わりに、データ駆動型 BDD を利用できます。また、ほとんどの人は、UI テストでさまざまなシナリオをカバーしたからといって、統合テストでは 1 つのシナリオだけをカバーする必要があるという考え方を持っています。

API の統合は次のようになります。

このアプローチを使用する際の問題は、将来、より多くの種類のメンバーシップが導入される場合、UI テストの実行を完了するのに時間がかかることです。これは、UI テストでは、アクションがトリガーされる前に最初に DOM 要素を検出する必要があるためです。

例:
ユーザーが [送信] ボタンをクリックする前に Web ページを下にスクロールする必要がある場合、ページを下にスクロールする手順を定義する必要があります。UI テストの数を減らして代わりに統合テストの数を増やす場合は、データがいずれかのメンバーシップ タイプで正しく表示されるかどうかを確認するために 1 つの UI テストを記述するだけで済みます。

UI テスト シナリオ: ログイン成功時に書籍を表示する

統合テストに関しては、2 セットのテスト (メンバーシップ タイプごとに 1 つのテスト) を使用できます。各テストでは、フェッチされた書籍の詳細が各メンバーシップ タイプに対して正しいかどうかを検証します。

API の統合は次のようになります。

より多くの統合テストを行うことで、データに関連するバグを解決する際の時間を節約できます。ただし、フォームのキャプチャなど、手動でテストを行う必要がある場合があることに注意してください。一部のシナリオは、自動化が技術的に実現不可能であるか、自動化するのに多大な労力がかかります。

統合テストがどのように機能するか、および統合テストが UI テストの数を減らすのにどのように役立つかについての理解を深めていただければ幸いです。プロジェクト チームが異なればテスト戦略も異なる場合があります。プロジェクトに最適な戦略を見つけられることを願っています。

労働者の日おめでとう!皆さん、安全で健康に(家で)過ごしてください〜❤️❤️❤️

- マーリン

提案された投稿

WinPeas を使用した Windows 特権エスカレーション

WinPeas を使用した Windows 特権エスカレーション

はじめに 新しい記事へようこそ。今日は、CarlosPolop によって作成された WinPeas ツールを使用して Windows マシンで特権をエスカレートする方法を紹介します。ここに、このツールの Github リンクがあります。そして、最も重要なのは、被害者のマシンで実行する exe があることです。

忍耐の実践

忍耐の実践

黄色い門で守られ、電柱の下に位置する近くの小道沿いのいくつかの木がなぎ倒され、細断された切り株と槍のように折れた枝が残された。これらのハナミズキ、ハンノキ、パシフィックヤナギは鳥に好まれていましたが、ポップとキャグニーと私が被害状況を調査しに行ったとき、鳥はほとんど見つかりませんでした。

関連記事

ジョーダン・ニーリー殺害と「愛国的」人種差別の問題

米国は、人種差別的な行動と善良な米国人であることを同一視しないという重要な一歩を踏み出すことができるだろうか?

ジョーダン・ニーリー殺害と「愛国的」人種差別の問題

[警告: このエッセイには、ジョーダン ニーリー殺害の犯人を賞賛する人々のスクリーンショットが含まれています。] 法執行当局はついに、そしておそらくはしぶしぶではありましたが、ジョーダン ニーリーを死ぬまで首を絞めた男、ダニエル ペニーをその殺人罪で起訴しました。

危険な会話

危険な会話

私たちがこの地球上で繁栄し続けたいのであれば、危険な会話をしなければなりません。私たちがこれまでやってきたこと、現在行っていること、そして現在継続して行う予定の(または計画している)ことに挑戦するものです。

一部のフリーランサーが自分の人生を偽っている理由

一部のフリーランサーが自分の人生を偽っている理由

私は最近、世界最大のプロフェッショナルなソーシャル ネットワークである Linkedin を利用していて、フォローしているフリーランス デザイナーの注目を集めた投稿を見つけました。彼らはすべて、飛行機からの写真、ラップトップを持ってビーチで撮影した写真、スイミング プールやオフィスから素晴らしい景色を眺めた写真を投稿していました。

デザインに 2 年 - 良い点、悪い点、そして醜い点…

デザインに 2 年 - 良い点、悪い点、そして醜い点…

「Hey Siri、オリビア・ディーンの『ミー・ダイブ』をかけて」私がナイジェリアのアクレにあるフューチャー アカデミー アフリカでインターンシップを始めたのは、2021 年 5 月のことでした。