java - 为什么 Junit TestRunner 找不到功能?

标签 java selenium junit cucumber test-runner

我正在使用cucumberselenium项目,并且我正在尝试通过Junit Test Runner运行测试。这是the complete code (确保您的 IDE 中有 lombok)。这是我的测试运行器:

@RunWith(Cucumber.class)
@CucumberOptions(
        features            = {"src/test/resources/features" }, 
        monochrome = true,
        plugin              = {
                "pretty",
                "com.cucumber.listener.ExtentCucumberFormatter:target/report.html"
        },
        tags                = {"@all"},
        glue                = {"stepDefinitions"}
        )
public class TestRunnerJUnit {

    @AfterClass
    public static void setup() {
        Reporter.setSystemInfo("User Name", System.getProperty("user.name"));
        Reporter.setSystemInfo("Time Zone", System.getProperty("user.timezone"));
        Reporter.setSystemInfo("Machine", "Windows 10" + "64 Bit");
        Reporter.setTestRunnerOutput("Sample test runner output message");
    }

}

重点是,当我使用测试运行程序运行测试时,它找到了功能文件,但在其中找不到任何场景。这是运行的输出:

@all
Feature: 
  As a customer, I should be able to register for insurance.

0 Scenarios
0 Steps
0m0.000s

如果我直接使用功能文件运行测试(通过右键单击它作为 Cucumber 运行,那么它运行良好。但是,我需要通过测试运行程序运行我的测试)

最佳答案

我有机会提取您的代码库并研究代码。 您遇到的问题与扩展库有关。 您在新行中提供功能名称,而哪个范围库无法理解这一点。在同一行写下功能名称,它应该可以解决您的问题

Feature: As a customer, I should be able to register for insurance.

我还建议您使用较新版本的 Cucumber (Cucumber-JVM v4+) 库,该库具有并发执行支持(在单个 JVM 下),并且您使用的当前库将根据您的配置跨越多个 JVM 实例

关于java - 为什么 Junit TestRunner 找不到功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59416697/

相关文章:

python - Selenium 请求的 HTTP header 中缺少 Referer

selenium - Docker:尽管演示成功,但无法查看正在运行的容器

java - 如何在apache FFT中使用复系数

java - System.out 是缓冲的还是非缓冲的?

java - 使用 REST API 更新 QC ALM 缺陷注释部分

java - Selenium 一次性填写所有输入字段 Java

java - 字符串到文本输出

unit-testing - Kotest 打破 gradle 的 :test task with java. lang.IllegalArgumentException: Received a failure event for test with unknown id

java - 使用不同的参数多次运行一个 junit 测试

java - 如何在多个文件的 JUnit 测试中执行测试