2016-02-09 112 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的例子,我也得到了相同的錯誤,直到我創建了一個新項目。 –