不再需要黄瓜赛跑者?

时间:2021-07-23 05:58:07

标签: selenium cucumber

快速问题 - 因为当 Cucumber 不需要任何单独的带有步骤粘连的跑步者类时?将 JUnit 依赖项添加到 pom.xml 后,目前不需要其他任何东西吗?我刚刚设置了一个简单的项目,除了 chromedriver、步骤定义、功能文件和 Selenium/JUnit/Cucumber 依赖项之外,我什么也看不到。一直都是这样吗?因为我记得这些项目因为那门课和其他一些事情而难以设置。是我当时愚蠢,还是做了一些改变而现在很容易?

1 个答案:

答案 0 :(得分:1)

很多东西都改进了!只是不是你提到的那件事。

当您使用 CLI(直接或通过 IDEA)时,Cucumber 将在整个类路径中搜索步骤定义和功能文件。这意味着事情通常正常

要与 JUnit4 集成,您仍然需要一个 runner 类。但是,除非您使用 @CucumberOptions 另行说明,否则运行程序类将在它所在的包和子包中查找功能和粘合。

因此,如果您将所有内容都放在正确的组中并放在同一个包中,则不需要额外的配置。你应该利用这个!

使用 maven 时有一个小问题。如果您将功能文件放在 src/test/java 文件夹中,maven 不会将它们复制到您的类路径中。功能应始终进入 src/test/resources

~/Projects/cucumber/cucumber-jvm/examples/calculator-java-junit4$ tree
.
├── pom.xml
└── src
    ├── main
    │   └── java
    │       └── io
    │           └── cucumber
    │               └── examples
    │                   └── calculator
    │                       └── RpnCalculator.java
    └── test
        ├── java
        │   └── io
        │       └── cucumber
        │           └── examples
        │               └── calculator
        │                   ├── RpnCalculatorSteps.java
        │                   └── RunCucumberTest.java
        └── resources
            ├── cucumber.properties
            └── io
                └── cucumber
                    └── examples
                        └── calculator
                            └── basic_arithmetic.feature

您还可以完成 10 分钟的教程以重新开始:https://cucumber.io/docs/guides/10-minute-tutorial/