機能テストについての私の理解では、それはアプリケーション機能の完全なセグメント全体をチェックする統合テストです。スタブ、モック、またはその他のテスト double を差し引いたもの。Web アプリの場合、これはおそらく、ユーザーがログイン フォームに不正な資格情報を入力しようとしたときに何が起こるかを手動でチェックすることになります。
スモーク テストについての私の理解では、アプリが正しく起動したかどうか、主要なサブシステムがすべてオンラインであるかどうかを判断するために使用できる一連の簡単な機能テストです。Web アプリの場合、これはヘルス チェック URL に移動し、アプリが起動していること、および依存するすべてのサブシステム (データベース、メッセージ ブローカーなど) にアクセスできることを確認することです。
回帰テストについての私の理解は、特定の機能が期待どおりに機能しなくなったかどうかを判断するために将来使用される機能テストであるということです。機能テストは、新機能のために作成されたり、既存の機能の変更のために書き直されたりすると、回帰テスト スイートに追加されます。この意味で、回帰テスト スイートは、特定の Web アプリのすべての有効な機能テストの構成です。
先に進む前に、これまでの発言が誤解を招いたり、真実でなかったりする場合は、まず訂正してください。
私が多かれ少なかれ順調に進んでいると仮定します:
- Selenium WebDriver や BrowserStack などのツールは、ここでどこに分類されますか? それらはスモークまたは回帰テスト用ですか?
- これらの種類のテストを実施するための一般的に受け入れられている方法/ツールは何ですか?
- 自動ビルド (Jenkins や Bamboo など) からこれらのテストを起動/実行する一般的に受け入れられている方法は何ですか?