为什么我的.feature文件说“未定义步骤参考”,尽管我的黄瓜测试运行良好并可以检测到步骤?

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

Intellij说我在查看.feature文件时未定义我的步骤。

Intellij undefined step

但是cucumber .feature文件运行良好,并且在步骤上肯定是匹配的。

我的T​​estNG运行程序代码:

package package1;

import io.cucumber.testng.AbstractTestNGCucumberTests;
import io.cucumber.testng.CucumberOptions;
import org.testng.annotations.DataProvider;

@CucumberOptions(plugin = "pretty", features = "src/test/resources/package1", glue = "package1")
public class Runner extends AbstractTestNGCucumberTests {

    @Override
    @DataProvider(parallel = true)
    public Object[][] scenarios() {
        return super.scenarios();
    }

}

特征文件中的步骤:

Feature: test feature
  Scenario: test feature scenario
  Given there has been a pebkac

我在StepDefinitions文件中的步骤:

Given("there has been a pebkac", () -> {
            //driver.findElement(By.id("editTextFieldId")).sendKeys("test");
            autoTools.getElement(new String[]{"editTextFieldId", "IOSIDHERE"}, AutomationTools.IdType.DEFAULT, 15).sendKeys("test");
            System.out.format("test: %n\n");

            //throw new cucumber.api.PendingException();
        });

为什么intellij抱怨找不到此步骤?我尝试使用带有注释的步骤定义文件,但遇到了同样的问题。

尽管我注意到,如果我转到特征文件并右键单击->添加步骤,它将使用已弃用的Given方法添加一个步骤。这使我觉得我可能使用了错误的依赖关系,尽管我是从他们网站上的cumulage教程获得它们的。

我的依赖项:

dependencies {
    testImplementation 'io.cucumber:cucumber-java:4.7.4'

    compile group: 'org.testng', name: 'testng', version: '6.14.3'
    compile group: 'io.cucumber', name: 'cucumber-testng', version: '4.7.4'
    compile group: 'io.appium', name: 'java-client', version: '7.1.0'
}

Intellij说,当我查看.feature文件时,我的步骤未定义。 Intellij未定义的步骤但是,黄瓜.feature文件运行良好,并且绝对与该步骤匹配。我的...

java cucumber testng feature-file
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.