有什么方法可以在 DSL 样式中检查 Kotest 中的多个断言 - 没有来自 JUnit 的 Assertions.assertAll 方法?
我可以写类似的东西吗
firstValue shouldBe 1
and secondValue shouldBe 2
代替
assertAll(
{ fistValue shouldBe 1 },
{ secondValue shouldBe 2 })
有什么方法可以在 DSL 样式中检查 Kotest 中的多个断言 - 没有来自 JUnit 的 Assertions.assertAll 方法?
我可以写类似的东西吗
firstValue shouldBe 1
and secondValue shouldBe 2
代替
assertAll(
{ fistValue shouldBe 1 },
{ secondValue shouldBe 2 })
我通常用assertSoftly
. 这可能正是您想要的。从文档
assertSoftly {
foo shouldBe bar
foo should contain(baz)
}
或将其用作参数
assertSoftly(foo) {
shouldNotEndWith("b")
length shouldBe 3
}
但是,您的语法同样适用。你真的不需要轻声断言。
firstValue shouldBe 1
secondValue shouldBe 2
将执行这两个断言。如果第一个失败,测试会提前崩溃。使用assertSoftly
,将检查两个断言。