2016-02-09 70 views
0

的步骤。我曾尝试用Java 8风格和Java 7风格定义它们,并使用IntelliJ生成MyStepdefs类的步骤,但无法找到它们。黄瓜JVM找不到定义

我使用黄瓜java8和黄瓜的JUnit的1.2.4版本。

import cucumber.api.CucumberOptions; 
import cucumber.api.DataTable; 
import cucumber.api.PendingException; 
import cucumber.api.java8.En; 
import cucumber.api.junit.Cucumber; 
import org.junit.runner.RunWith; 

@RunWith(Cucumber.class) 
@CucumberOptions(
     monochrome = true, 
     glue = {"com.mycom.core.agg.RunCukesTest"}) 
public class RunCukesTest implements En { 

    public RunCukesTest() { 
     Given("^I have PriceLevels$", (DataTable arg1) -> { 
     }); 

     And("^I have a TradeRequest$", (DataTable arg1) -> { 
     }); 

     Then("^I should get these LegRequests$", (DataTable arg1) -> { 
     }); 
    } 
} 

运行测试打印

Running com.mycom.core.agg.RunCukesTest 

1 Scenarios (1 undefined) 
3 Steps (3 undefined) 
0m0.000s 


You can implement missing steps with the snippets below: 

Given("^I have PriceLevels$", (DataTable arg1) -> { 
.. rest deleted ... 

从运行的IntelliJ特征文件给很多同样的错误。

回答

1

虽然我们无法弄清楚的原因是什么,创建一个最小的依赖关系的新Maven项目“固定”的问题。我们不需要更改代码。

+0

你面临的问题是不包含预期的步骤的类路径。 创建Maven项目,如果你的src /测试/资源/ <你的包>找到他们还将创建一个包含的功能和步骤的类路径/ *。功能和src /测试/ JAVA/ /*.java。 预期的结果是将找到步骤。如你所知。 –

+0

@ThomasSundberg特征和步骤的路径在第一个项目中与第二个项目相同。我甚至用这个想法来完成这些步骤,插件说它可以找到一个匹配项。它似乎与依赖冲突,因为即使我使用github/cucumber的例子,我也得到了相同的错误,直到我创建了一个新项目。 –