有没有办法以 DSL 风格检查 Kotest 中的多个断言 - 没有 JUnit 的 Assertions.assertAll 方法?
我可以写一些类似的东西吗
firstValue shouldBe 1
and secondValue shouldBe 2
Run Code Online (Sandbox Code Playgroud)
代替
assertAll(
{ fistValue shouldBe 1 },
{ secondValue shouldBe 2 })
Run Code Online (Sandbox Code Playgroud)
我通常用 来做assertSoftly
。这可能正是您想要的。从文档中
assertSoftly {
foo shouldBe bar
foo should contain(baz)
}
Run Code Online (Sandbox Code Playgroud)
或者将其用作参数
assertSoftly(foo) {
shouldNotEndWith("b")
length shouldBe 3
}
Run Code Online (Sandbox Code Playgroud)
但是,您的语法同样有效。你真的不需要软弱地断言。
firstValue shouldBe 1
secondValue shouldBe 2
Run Code Online (Sandbox Code Playgroud)
将执行这两个断言。如果第一个失败,测试就会提前崩溃。使用assertSoftly
,将检查两个断言。
归档时间: |
|
查看次数: |
2200 次 |
最近记录: |