1
如何獲取當前運行的uTest測試用例的名稱?如何獲取當前scalajs/uTest測試用例的名稱
在測試案例中,我通常使用println(...)或log.debug(...)來打印和檢查各種值。 在測試用例開始時,我打印測試用例的名稱。
我總是可以做到這一點:
object MyTests extends TestSuite
def tests = TestSuite {
"MyTest01" - {
println("MyTest01 starting ***************************************************")
val x = Thing.doComplexCalc
println("x = " + x)
val y = AnotherThing.doSomethingMore(x)
println("y = " + y)
assert(y=="mysterious output")
}
}
}
在這個(極度簡化的)例子 「MyTest01」 被複制。我正在尋找的是一種消除重複的方法,例如像這樣:
object MyTests extends TestSuite
def tests = TestSuite {
"MyTest01" - {
println(getTest().name + " starting ***************************************************")
val x = Thing.doComplexCalc
println("x = " + x)
val y = AnotherThing.doSomethingMore(x)
println("y = " + y)
assert(y=="mysterious output")
}
}
}
測試名稱可從tests.toSeq()的名字,但怎麼知道正在運行的情況下,特別是如果他們使用的SBT並行運行。
這是一個好消息,它是未來。有沒有機會在下一個版本中使用它? – user4955663
每當下一個版本發生時可能會發生。 –