【发布时间】:2019-09-26 11:53:17
【问题描述】:
在将 som Java 步骤定义转换为 Kotlin 后,我得到了“重复的步骤定义”。 Jenkins 将以下步骤定义识别为重复项:
@Given("^that \"([^\"]*)\" is a case in city \"([^\"]*)\" to buy a specific house with code$")
fun theCaseIsACaseInCityToBuySpecificHouseWithCode(caseTag: String, city: String) {
@Given("^that \"([^\"]*)\" is a case in city \"([^\"]*)\" to buy a specific house$")
fun theCaseIsACaseInCityToBuySpecificHouse(caseTag: String = "case", city: String = "5035") {
詹金斯声称的错误信息:
cucumber.runtime.DuplicateStepDefinitionException:
Duplicate step definitions in void e2e.case.CreateCaseSteps
.theCaseIsACaseInCityToBuySpecificHouse(String,String)
in file:/tmp/workspace/EST_cases_PR-12432/e2e/cucumber/target/test-classes/
and
e2e.case.CreateCaseSteps.theCaseIsACaseInCityToBuySpecificHouse
$default(OpprettSakSteps,String,String,int,Object)
我在 Java 上也看到过类似的情况,但我似乎记得问题是最后一个“$”缺失,因此第二行将“等于”第一行。
在 Kotlin 中使用这个,问题似乎是别的。
有什么想法吗?周围似乎没有太多关于 Cucumber 和 Kotlin 的信息。
【问题讨论】:
-
你可能仍然有 java 类的测试方法与 kotlin 测试方法同名
-
我可能有,但我没有。我一直在小心翼翼地一一搬家。