kotlin Cumber的maven依赖性是什么?
我想使用kotlin本机步骤定义: 其中,kotlin Cumber的maven依赖性是什么?,maven,cucumber,kotlin,pom.xml,Maven,Cucumber,Kotlin,Pom.xml,我想使用kotlin本机步骤定义: 其中,给定的采用函数而不是注释。我不想使用Java样式,比如@Given(“blablabla”)void blabla(){…} 我尝试从示例中导入包: package vc.capper.cutest; import cucumber.runtime.kotlin.test class SomeStepDefs { Given("blabla") { } } 但是在cucumber.runtime中找不到包kotlin 我认为io.c
给定的
采用函数而不是注释。我不想使用Java样式,比如@Given(“blablabla”)void blabla(){…}
我尝试从示例中导入包:
package vc.capper.cutest;
import cucumber.runtime.kotlin.test
class SomeStepDefs
{
Given("blabla") {
}
}
但是在cucumber.runtime中找不到包kotlin
我认为io.cumber:cumber jvm
(工件)[附带cumber-kotlin-java8
,但它要么不包含,要么不包含给定的
这是我的pom.xml
中的一段摘录——我想有些东西缺失了,但是什么呢
序曲:
<properties>
<java.version>1.8</java.version>
<kotlin.version>1.1.2-2</kotlin.version>
<spring-boot.version>1.5.7.RELEASE</spring-boot.version>
<cucumber.version>2.0.1</cucumber.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
...
</dependencyManagement>
1.8
1.1.2-2
1.5.7.1发布
2.0.1
org.springframework.boot
...
依赖项:
<dependencies>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-jvm</artifactId>
<version>${cucumber.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-spring</artifactId>
<version>${cucumber.version}</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-junit</artifactId>
<version>${cucumber.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib-jre8</artifactId>
<version>${kotlin.version}</version>
</dependency>
...
</dependencies>
黄瓜
您还可以看到项目使用的实际依赖项列表:
看起来给定的不是Kotlin特定的DSL/方法。它是cucumber.api.java8.En
的一部分。您所要做的就是从中扩展类:
package vc.capper.cutest;
import cucumber.runtime.kotlin.test
import cucumber.api.java8.En
class SomeStepDefs : En {
Given("blabla") {
...
}
}
将cucumber-jvm
更改为cucumber-java8
以使用lambda样式的定义
注意目前还没有cucumber的本地Kotlin实现
另外,您所指的cucumber-kotlin-java8
是如何将cucumber-java8与kotlin一起使用的示例
此外,您需要扩展En
接口。不,不是这样。我更新了QT中的信息这里没有工件cucumber-kotlin-java8
,因为cucumber没有“特殊”的kotlin类。正如他们的文档中所述:“您可以直接在kotlin中使用cucumber-java
或cucumber-java8
。”另外,cucumber.runtime.kotlin.test
包似乎是您的:package cucumber.runtime.kotlin.test;
在第一个文件中。然后您尝试在SomeStepDefs
中导入它。当我在IDE中导入时,它可以完美地工作。
package vc.capper.cutest;
import cucumber.runtime.kotlin.test
import cucumber.api.java8.En
class SomeStepDefs : En {
Given("blabla") {
...
}
}