【问题标题】:Kotlin karate-junit-5 no features or scenarios found [duplicate]Kotlin karate-junit-5 未找到任何功能或场景 [重复]
【发布时间】:2021-09-23 20:19:09
【问题描述】:

我在 junit-5 runner 和 kotlin 中使用空手道,而空手道似乎找不到我的功能文件:

我得到以下信息

未找到任何功能或场景:[classpath:sncf/karate] org.opentest4j.AssertionFailedError:未找到任何功能或场景:[classpath:sncf/karate]

这是我的测试文件:

package sncf.karate

import com.intuit.karate.junit5.Karate

class ThreatControllerIT {

   @Karate.Test
   fun testThreat(): Karate {
       return Karate.run().relativeTo(javaClass)
   }
}

以及 it 包中的树(我存储集成测试的地方)

kotlin
│   ├── karate-config.js
│   └── sncf
│      └── karate
│          ├── ThreatController.feature
│          └── ThreatControllerIT.kt
└── resources

【问题讨论】:

    标签: kotlin karate


    【解决方案1】:

    我在 Google 上进行了搜索,发现了一些 Kotlin 空手道项目,所以这可能会有所帮助:TestKarate.kt

    否则这不是项目开发人员花时间做的事情,所以也许你可以贡献:)

    也就是说,请注意,使用 JUnit 不是强制性的,使用 Runner API 可能会获得更好的结果:https://stackoverflow.com/a/65578167/143475

    一个常见的错误是不使用推荐的 Maven 结构:https://github.com/intuit/karate#folder-structure

    【讨论】:

      【解决方案2】:

      感谢您的帮助,

      我为集成测试创建了另一种测试类型,我的配置在build.gradle.kts 有错误,点击此链接https://github.com/intuit/karate#folder-structure 对我有很大帮助。

      这是我用于集成测试的最终 build.gradle.kts 配置

      sourceSets {
          create("it") {
              compileClasspath += sourceSets.main.get().output
              runtimeClasspath += sourceSets.main.get().output
      
              resources {
                  srcDir(file("src/it/kotlin"))
                  exclude("**/*.kt")
              }
          }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-10-18
        • 2019-10-16
        • 2019-10-13
        • 1970-01-01
        • 2019-03-29
        • 1970-01-01
        相关资源
        最近更新 更多