从TestRunner类运行测试后未定义的步骤。

问题描述 投票:1回答:1

我有一个非常奇怪的情况,我已经创建了 FeaturesScenarios 中的特征文件,并在单独的类中给出相应的步骤定义和方法。

我曾通过运行特征文件来运行测试,一切正常,所有测试都是绿色的。

但是,当我从 TestRunner 类,我得到了以下消息。

Undefined step: 鉴于我在Facebook的登录页面和建议的代码,

你可以用下面的代码段实现缺失的步骤。

@Given("^I am on the Facebook Login page$")
public void i_am_on_the_Facebook_Login_page() throws Throwable {
    // Write code here that turns the phrase above into concrete actions
    throw new PendingException();
}

我注意到建议的方法有下划线:

(i_am_on_the_Facebook_Login_page())

但我的方法没有下划线

(iAmOnTheFacebookLoginPage())

有人知道为什么会发生这种情况吗?我现在即使从特性文件中也无法运行测试。

最近,我开始使用 麦金塔IntelliJ 而不是 窗口日食.

有没有可能 IntelliJ P.S.我已经使用了 "创建步骤定义 "选项,从 IntelliJ

cucumber-java test-runner
1个回答
0
投票

啊......我知道问题出在哪里了......我忘了放这段代码了 snippets = SnippetType.CAMELCASE 中的CucumberOptions。

所以,当我把这行代码放在这里的时候

@CucumberOptions( plugin = {"pretty"}, features = {"src/test/resources/features"}, glue = {"/java/stepDefinitions"}, snippets = SnippetType.CAMELCASE)

一切都很正常。


0
投票

可能是你的features文件夹不在构建路径中(是测试文件夹),所以Cucumber找不到它。试试 这个.

© www.soinside.com 2019 - 2024. All rights reserved.