问题标签 [kotlintest]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
6124 浏览

kotlin - How to write beforeEach and beforeClass in kotlintest

Given is the example from kotlin-test github docs, but i don't see beforeEach or beforeClass concept here. I want to understand,

  • How to execute a code/method once before every test
  • How to execute a code/method once before every test class
0 投票
3 回答
2607 浏览

android - 尝试在 Intellij 2018.2.RC 中执行 JUnit 4 测试时出现 NoClassDefFoundError

当尝试在 Android 中执行一个非常简单的 Hello World 测试时,使用 KotlinTest:

当尝试在 IntelliJ 中执行此操作时,通过单击绿色图标,我收到以下错误:

我正在使用此依赖项:

JUnit 4 是必要的,因为 Android 还不支持 JUnit 5。

执行时./gradlew test它可以正常工作,所以我认为这只是 IntelliJ 的问题?

0 投票
0 回答
73 浏览

spring - KotlinTest 多个 Bean

我想为 SpringBoot 应用程序创建测试。我正在阅读一个示例MyBean,当我有多个要测试时,我无法理解我应该怎么做。我应该创建一个新Test文件吗?我应该把我Autowire所有的豆子都放在一个班级里吗?我真正想做的是测试一些RestController

0 投票
2 回答
1347 浏览

testng - KotlinTest 是否也支持 TestNG?

我可以将 KotlinTest 与 TestNG 一起使用吗?我只能在文档中看到 JUnit 。

0 投票
0 回答
265 浏览

android - Android Studio 默认 Junit Runner

我正在尝试编写测试。我有:

  • 安卓工作室 3.1.4,
  • 梯度 4.7
  • io.kotlintest:kotlintest-runner-junit4:3.1.9

当我通过绿色箭头运行测试时,我看到:

但是当我通过 cli-gradle task 运行时:test 一切都很好。

当我通过 gui 中的绿色箭头运行测试时,如何获得相同的行为?

0 投票
0 回答
284 浏览

spring - 未使用 KotlinTest 3.1.8 初始化 Spring Autowire

我知道这应该是可能的,因为其他人报告说它有效。但是,在一个简单的“演示”项目(Spring Initializer)中,我无法在测试中初始化 autowired 属性。

当我在“JpaTestApplicationTests”中执行测试时,我无法通过接收“lateinit property repo has not been initialized kotlin.UninitializedPropertyAccessException”。

谁能帮我理解我做错了什么?

下面是我的应用程序文件,要自动装配和测试的 bean:

应用:

豆:

测试:

相关 Gradle 条目:

0 投票
1 回答
1479 浏览

android - 使用 gradle kotlin dsl 时未解决的参考 kotlintest

这是我的build.gradle.kts

构建它时./gradlew build没有发生错误,但如果我使用文档中的指定代码:

我收到以下错误:Task with name 'test' not found in project ':app'.

我的settings.gradle.kts

有谁知道这里发生了什么?奇怪的是 AS 可以建议我自动完成,但在编译时,我得到了这个未解决的参考。

0 投票
1 回答
1287 浏览

unit-testing - 如何在 kotlin 方法签名中模拟/匹配 lambda

我在以下表格上有一些代码:

它使用来自com.github.andrewoma.kwery.core的以下内容。注意方法签名中的 lambda:

我使用 mockitokotlin2。

当使用选择查询(包含“SELECT foo”)调用会话选择方法时,我需要返回 MyObject 的实例。

我在想我可以将一个模拟传递给 lambda,如下所示(但它与我试图模拟的方法调用不匹配)。下面的代码是一个尝试。但它从不匹配eq(function2)

在我的情况下,function2 并不是真正的映射器,它与我要模拟的内容不相等,它永远不会匹配并且永远不会调用模拟。

那么在上面的代码中,我应该在 mock 中session, select而不是eq(function2)中放置什么来返回 MyObject 对象?

0 投票
0 回答
160 浏览

jenkins - 在 Jenkins 管道中生成完整的 kotlintest 报告?

我正在使用带有gradle的 kotlintest。当我在 IntelliJ 中运行测试时,我可以看到整个 Given/When/Then结构。这也反映在我可以使用 IntelliJ 导出测试结果功能生成的报告中。这完美地工作并且完全符合我的要求。

可悲的是,当我使用gradlew test它运行测试时,只会拾取 Then 块。这意味着虽然所有测试都正确运行,但生成的报告看起来很难看。

问题是我想在 Jenkins 管道中自动生成 HTML 报告。目前结果是无用的,因为它不包含 Given 和 When 块。

是否有可能以某种方式生成完整的 HTML 报告,在 Jenkins 管道中包含所有 Given/When/Then 块?

0 投票
1 回答
1233 浏览

spring-boot - Kotlintest 与 Spring 测试,@Transactional 不工作/应用

我无法让 Spring Boot 2.0.5 与 Kotlintest 3.1.10 很好地配合使用。

我做了一个测试项目来说明我遇到的问题。该项目是一个带有两个实体的Spring Boot 2应用程序,ShoppingOrder 和 OrderLine(完全没有想象力)。

还有一个测试用例ShoppingOrderSpec,它只是通过存储和检索订单来测试映射。

测试用例配置如下:

测试用例使用 Spring 的SpringExtension 连接到 JUnit 5 引擎。它还使用来自KotlintestSpringListener的and来构建测试并进行断言。Wordspec

正确地SpringListener自动装配依赖关系,但不知何故没有创建事务。

运行测试用例会给出以下堆栈跟踪:

2018-10-12 10:54:14.329 INFO 59374 --- [intest-engine-0] com.example.demo.ShoppingOrderSpec:在 4.478 秒内启动 ShoppingOrderSpec(JVM 运行 7.421)org.hibernate.LazyInitializationException:懒惰失败初始化角色集合:com.example.demo.ShoppingOrder.lines,无法初始化代理 - org.hibernate.collection.internal.AbstractPersistentCollection.throwLazyInitializationException(AbstractPersistentCollection.java:582) 处没有会话 ...在 com.example。 demo.ShoppingOrderSpec$1$1.invoke(ShoppingOrderSpec.kt:35) at com.example.demo.ShoppingOrderSpec$1$1.invoke(ShoppingOrderSpec.kt:19)

所以,不知何故,org.springframework.transaction.annotation.Transactional注释似乎不起作用,因为删除注释,只是给出了相同的响应。

任何人有任何想法如何得到@Transactional应用和尊重?