0

機能テストについての私の理解では、それはアプリケーション機能の完全なセグメント全体をチェックする統合テストです。スタブ、モック、またはその他のテスト double を差し引いたもの。Web アプリの場合、これはおそらく、ユーザーがログイン フォームに不正な資格情報を入力しようとしたときに何が起こるかを手動でチェックすることになります。

スモーク テストについての私の理解では、アプリが正しく起動したかどうか、主要なサブシステムがすべてオンラインであるかどうかを判断するために使用できる一連の簡単な機能テストです。Web アプリの場合、これはヘルス チェック URL に移動し、アプリが起動していること、および依存するすべてのサブシステム (データベース、メッセージ ブローカーなど) にアクセスできることを確認することです。

回帰テストについての私の理解は、特定の機能が期待どおりに機能しなくなったかどうかを判断するために将来使用される機能テストであるということです。機能テストは、新機能のために作成されたり、既存の機能の変更のために書き直されたりすると、回帰テスト スイートに追加されます。この意味で、回帰テスト スイートは、特定の Web アプリのすべての有効な機能テストの構成です。

先に進む前に、これまでの発言が誤解を招いたり、真実でなかったりする場合は、まず訂正してください。

私が多かれ少なかれ順調に進んでいると仮定します:

  1. Selenium WebDriver や BrowserStack などのツールは、ここでどこに分類されますか? それらはスモークまたは回帰テスト用ですか?
  2. これらの種類のテストを実施するための一般的に受け入れられている方法/ツールは何ですか?
  3. 自動ビルド (Jenkins や Bamboo など) からこれらのテストを起動/実行する一般的に受け入れられている方法は何ですか?
4

1 に答える 1

1

一般的に、Web アプリの自動化を考えると、次の段階があります。

  • Automate the Sanity/Smoke Tests

これを行うには、テスト自動化ツールを使用してサニティ テストの自動化基準を達成できることを確認する必要があります。単一のツールを使用して、Web アプリのすべてのドメインでサニティの自動化を実現するという厳格なルールはありません。正気度が安定したら、次に進みます。

  • Automate the Release / Regression Suite

リリース スイートまたはリグレッション スイートの自動化は、費用対効果が高くなければならず、テストには長期的なメンテナンスが必要なため、テスト自動化フレームワークの設計が重要な役割を果たします。

あなたの質問に対する私の回答は次のとおりです

  1. プロジェクトの戦略によって異なります。

  2. 私が提案するのは、ある意味で自動化された健全性テストを選択して、自動化を迅速に実行できるようにすることです。ここで本格的なテスト自動化フレームワークの開発を開始すると、健全性の自動化により多くの時間がかかる可能性があります

    また、リリースの自動化については、フレームワークのすべての可能性と要件を考慮して、フレームワーク アーキテクチャを慎重に計画します。

  3. 自動テストは、Jenkins、Bamboo、Cruise などの任意の CI サーバーと統合でき、すべて自動化戦略に依存します。

私の経験を考えると、これは私があなただったら私がすることです

  • まず、そのドメインの自動化に適したツールを特定します
  • テストを実行し、レポートを含む電子メールを利害関係者に送信できる基本的なフレームワークを使用して、健全性を自動化します。
  • CI サーバーを確立し、ジョブを作成して、毎日実行し、すべての利害関係者が結果を受け取るようにします。
  • テスト自動化フレームワーク開発を含むリリース スイートの自動化アプローチを開始
于 2014-05-21T02:42:10.810 に答える