Cucable 插件:如何避免运行“[CUCABLE:FEATURE].feature”(java 模板文件)?

麦克风

以下是我的黄瓜模板 java 文件。

    package some.template;

import cucumber.api.CucumberOptions;
//import cucumber.api.junit.Cucumber;
import cucumber.api.testng.CucumberFeatureWrapper;
import cucumber.api.testng.PickleEventWrapper;
import cucumber.api.testng.TestNGCucumberRunner;
//import org.junit.runner.RunWith;
import org.testng.IRetryAnalyzer;
import org.testng.ITestResult;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;


//@RunWith(Cucumber.class)
@CucumberOptions(
        glue = "com.fifa.stepdefs",
        features = {"target/parallel/features/[CUCABLE:FEATURE].feature"},
        plugin = {"json:target/cucumber-report/[CUCABLE:RUNNER].json"}
)

public class CucableJavaTemplate implements IRetryAnalyzer {

    private int count = 0;
    private static int maxTry = 3;

    @Override
    public boolean retry(ITestResult iTestResult) {
        if (!iTestResult.isSuccess()) {  ;//Check if test not succeed
            if (count < maxTry) {                            //Check if maxtry count is reached
                count++;                                    //Increase the maxTry count by 1
                iTestResult.setStatus(ITestResult.FAILURE);  //Mark test as failed
                return true;                                 //Tells TestNG to re-run the test
            } else {
                iTestResult.setStatus(ITestResult.FAILURE);  //If maxCount reached,test marked as failed
            }
        } else {
            iTestResult.setStatus(ITestResult.SUCCESS);      //If test passes, TestNG marks it as passed
        }
        return false;
    }
    private TestNGCucumberRunner testNGCucumberRunner;

    @BeforeClass(alwaysRun = true)
    public void setUpClass() throws Exception {
        System.out.println("Before Scenario ****");
        testNGCucumberRunner = new TestNGCucumberRunner(this.getClass());
    }

    @Test(groups = "cucumber", description = "Runs Cucumber Scenarios", dataProvider = "scenarios",retryAnalyzer = CucableJavaTemplate.class)
    public void scenario(PickleEventWrapper pickleEvent, CucumberFeatureWrapper cucumberFeature) throws Throwable {
        testNGCucumberRunner.runScenario(pickleEvent.getPickleEvent());
    }

    @DataProvider
    public Object[][] scenarios() {
        return testNGCucumberRunner.provideScenarios();
    }

    @AfterClass(alwaysRun = true)
    public void tearDownClass() throws Exception {
        System.out.println("After Scenario ****");
        testNGCucumberRunner.finish();
    }
}

当我运行 mvn clean verify 时,会发生以下情况:

  1. 特征文件中的场景被分解成多个场景并生成单独的跑步者
  2. 运行测试。但是在运行实际测试之前,cucumber-testng 还尝试运行 '[CUC​​ABLE:FEATURE].feature' 并失败并显示错误:

[Utils] [ERROR] [Error] java.lang.IllegalArgumentException: 不是文件或目录:/projectpath/target/parallel/features/[CUCABLE:FEATURE].feature

  • 如何避免运行“[CUCABLE:FEATURE].feature”?
麦克风
<plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
            <skipTests>true</skipTests>
        </configuration>
    </plugin>

我想我想通了。添加了上述插件,现在跳过这些测试。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Specflow与.feature文件的关联

来自分类Dev

从Gradle运行单个cucumber-jvm .feature文件

来自分类Dev

通过ERB预处理程序运行Cucumber .feature文件

来自分类Dev

如何使简单的.file像Gherking .feature文件一样?

来自分类Dev

以Background结尾的.feature文件导致错误

来自分类Dev

无法在Pycharm社区中创建.feature文件

来自分类Dev

Feature 分支中的文件冲突解决

来自分类Dev

如何在Github上搜索所有扩展名为`.feature`的文件?

来自分类Dev

如何使用Java 8 Feature(Stream)迭代字符串并修改某些字段

来自分类Dev

如何找到Windows Feature Experience Pack的版本?

来自分类Dev

Feature2DToolbox.VoteForUniqueness如何工作?

来自分类Dev

如何从GridsearchCV获取feature_importances_

来自分类Dev

如何找到Windows Feature Experience Pack的版本?

来自分类Dev

如何使用-feature选项运行Play Framework 2.2.0

来自分类Dev

在Ruby中运行`cucumber feature / test.feature`显示奇怪的行为

来自分类Dev

我是否可以避免键入feature:repo-add camel 2.17.3并让features.xml文件自动执行此操作?

来自分类Dev

使用更新的.feature文件执行测试而无需编译

来自分类Dev

Specflow生成的feature.cs文件未更新

来自分类Dev

Travis CI无法解析我的小黄瓜`.feature`文件

来自分类Dev

Specflow 生成的 feature.cs 文件不起作用

来自分类Dev

写入FEATURE_BROWSER_EMULATION RegistryKey时,如何配置.wxs文件以检测IE的最新版本?

来自分类Dev

使用-feature重新运行以获取详细信息

来自分类Dev

编译scala时,maven“使用-feature重新运行”

来自分类Dev

noSQL rollback feature

来自分类Dev

declare component in feature modules

来自分类Dev

python:如何从feature_importances获取真实的功能名称

来自分类Dev

在Scikit-learn的RandomForestRegressor中如何排列“ feature_importances_”

来自分类Dev

如何安装feature_engine python软件包?

来自分类Dev

如何安装Windows Media Feature Pack?(游戏要求)

Related 相关文章

  1. 1

    Specflow与.feature文件的关联

  2. 2

    从Gradle运行单个cucumber-jvm .feature文件

  3. 3

    通过ERB预处理程序运行Cucumber .feature文件

  4. 4

    如何使简单的.file像Gherking .feature文件一样?

  5. 5

    以Background结尾的.feature文件导致错误

  6. 6

    无法在Pycharm社区中创建.feature文件

  7. 7

    Feature 分支中的文件冲突解决

  8. 8

    如何在Github上搜索所有扩展名为`.feature`的文件?

  9. 9

    如何使用Java 8 Feature(Stream)迭代字符串并修改某些字段

  10. 10

    如何找到Windows Feature Experience Pack的版本?

  11. 11

    Feature2DToolbox.VoteForUniqueness如何工作?

  12. 12

    如何从GridsearchCV获取feature_importances_

  13. 13

    如何找到Windows Feature Experience Pack的版本?

  14. 14

    如何使用-feature选项运行Play Framework 2.2.0

  15. 15

    在Ruby中运行`cucumber feature / test.feature`显示奇怪的行为

  16. 16

    我是否可以避免键入feature:repo-add camel 2.17.3并让features.xml文件自动执行此操作?

  17. 17

    使用更新的.feature文件执行测试而无需编译

  18. 18

    Specflow生成的feature.cs文件未更新

  19. 19

    Travis CI无法解析我的小黄瓜`.feature`文件

  20. 20

    Specflow 生成的 feature.cs 文件不起作用

  21. 21

    写入FEATURE_BROWSER_EMULATION RegistryKey时,如何配置.wxs文件以检测IE的最新版本?

  22. 22

    使用-feature重新运行以获取详细信息

  23. 23

    编译scala时,maven“使用-feature重新运行”

  24. 24

    noSQL rollback feature

  25. 25

    declare component in feature modules

  26. 26

    python:如何从feature_importances获取真实的功能名称

  27. 27

    在Scikit-learn的RandomForestRegressor中如何排列“ feature_importances_”

  28. 28

    如何安装feature_engine python软件包?

  29. 29

    如何安装Windows Media Feature Pack?(游戏要求)

热门标签

归档