機能ファイル
@ActivateSegment
Feature: Test for Activate segment
Scenario: Login
Given I navigate to M
And I enter user name
And I enter password
And I login to MM
Scenario: Open grid
Given I choose menu
And I choose Segments menu
Scenario: Open segment creation page
Given I click on New button
And I click on Segment button
タグ~@tag_name
を使用
特定のタグを持つシナリオを除外するには
cucumber --tags ~@tag_name
注~
シンボルを使用しました。
ここで注意すべきことの1つは、@ wipタグ付きのシナリオに合格すると、Cucumberが1のステータスで終了することです(合格後には進行中ではないことを思い出させてください)。
@billing
Feature: Verify billing
@important
Scenario: Missing product description
Scenario: Several products
cucumber --tags @billing # Runs both scenarios
cucumber --tags @important # Runs the first scenario
cucumber --tags ~@important # Runs the second scenario (Scenarios without @important)
Cucumber.io によると、タグ式を定義できる2つのスタイルがあります。特定の場合、@ ignoreでマークされたステップまたは機能を除外するには、これら2つのスタイルは次のように変換されます。
cucumber --tags ~@ignore
cucumber --tags "not @ignore"
。驚いたことに、Node.js v6.9.2で実行されている同じcucumber-js v1.3.1を使用すると、Windowsバージョンは新しいスタイルのみを受け入れ、Linuxバージョンは古いスタイルのみを受け入れました。設定によっては、両方を試して、どちらかで成功するかどうかを確認することもできます。
*。特徴
@skip_scenario
Scenario: Hey i am a scenario
Given blah blah
And blah blah blah
CucumberHooks.Java
package CucumberHooks;
import cucumber.api.Scenario;
import cucumber.api.Java.Before;
public class CucumberHooks {
@Before("@skip_scenario")
public void skip_scenario(Scenario scenario){
System.out.println("SKIP SCENARIO: " + scenario.getName());
Assume.assumeTrue(false);
}
}
@ActivateSegment
Feature: Test for Activate segment
Scenario: Login
Given I navigate to M
And I enter user name
And I enter password
And I login to MM
Scenario: Open grid
Given I choose menu
And I choose Segments menu
@avoid
Scenario: Open segment creation page
Given I click on New button
And I click on Segment button
キュウリのオプション
ランナークラスでは、以下に示すように、実行したくないタグを使用します。tags = {"〜@ avoid"}
特別なタグ@wip
は既にネイティブサポートされており、他のコードを追加せずに使用できます。
関連するコマンドラインスイッチもあります。
-w, --wip Fail if there are any passing scenarios.
JUnit runner class
および https://cucumber.io/docs/cucumber/api/#ignoring-a-subset-of-scenarios を参照
独自の無視タグを作成できます
import cucumber.api.CucumberOptions;
import cucumber.api.junit.Cucumber;
import org.junit.runner.RunWith;
@RunWith(Cucumber.class)
@CucumberOptions(tags = "not @ignore")
public class RunCucumberTest {
}
次に、次のようにシナリオにタグを付けます。
@ignore
Scenario: Check if all the 3 categories of cats are displayed
Given I open the Cats App
When I view the home screen
Then I should see all three cats categories displayed
コマンドラインから、次のように書くことができます
mvn test -DCucumber.options = "-tags '@login and not @grid'"
二重引用符( "")を外側に、単一引用符( ')を内側に入れる