web-dev-qa-db-ja.com

スイートvsスペック分度器

最近、分度器を使用してプロジェクトをピックアップしました。

スイートとスペックの違いを理解するのに問題があります。また、testのフォルダーを実行した後、そのフォルダーを実行すると、スイートで問題が発生します。別のtestフォルダーを実行すると、すべてのテストに失敗します。以下にリストされているヘルプは、スイートがどのように見えるかを示しています。

例:

suites: {
    CSRSmokeTest: '../smoke/Video/**.js'
    DesktopSmokeTest: '../smoke/deskTop/**.js'
},
8
Tyson H.

スイートは、テストを整理するのに非常に便利です。

問題は、実際には、スイートと一般的なテストケースの違いに帰着します。 ウィキペディアの「テストスイート」の定義からの引用

ソフトウェアプログラムをテストして、指定された一連の動作があることを示すために使用することを目的としたテストケースのコレクション。多くの場合、テストスイートには、テストケースの各コレクションの詳細な手順または目標と、テスト中に使用されるシステム構成に関する情報が含まれています。

言い換えると、テストスイートは、共通プロパティlogicによって統合された仕様/テストケースのコレクションです。たとえば、アプリケーションのさまざまなタイプの機能、homepagesearchなどのスイートがある場合があります。

suites: {
  homepage: 'tests/e2e/homepage/**/*Spec.js',
  search: [
    'tests/e2e/contact_search/**/*Spec.js',
    'tests/e2e/venue_search/**/*Spec.js'
  ] 
},

および/または、テストのタイプごとに仕様をスイートにグループ化した場合があります。

suites: {
  smoke: 'tests/e2e/smoke/*.js',
  performance: 'tests/e2e/performance/*.js'
},

または、すべての「回帰」テストを別のスイートに入れることもできます。または、独自のロジックをグループ仕様に適用することもできます。

単一の仕様が複数のテストスイートの一部になる可能性があることに注意することが重要です。

34
alecxe