- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用最高级的 Flatspec 和 TimeLimits 特性,我可以为一行代码设置超时,如下所示:
import org.scalatest.time.SpanSugar._
import org.scalatest.concurrent.TimeLimits
import org.scalatest.FlatSpec
class MyTestClass extends Flatspec with TimeLimits {
"My thread" must "complete on time" in {
failAfter(100 millis) { infiniteLoop() }
// I have also tried cancelAfter
}
}
由于超时,这应该会失败。但是,当我在 Intellij 中运行此测试时,它会一直运行下去。
此外,我不想为每个方法重写超时,相反我想为整个类配置一次。 PatienceConfig声称这样做,但它似乎没有做任何事情。测试仍然会永远运行。
import org.scalatest.FlatSpec
import org.scalatest.time.{Millis, Span}
import org.scalatest.concurrent.{Eventually, IntegrationPatience}
class MyTestClass extends Flatspec with Eventually with IntegrationPatience {
implicit val defaultPatience = PatienceConfig(timeout=Span(100, Millis))
"My thread" must "complete on time" in {
inifiniteLoop()
}
}
最佳答案
我自己寻找解决方案。来了一个十字架 this回答,它对我有用。我正在使用 flatspec,添加了 TimeLimitedTests 特性
with TimeLimitedTests
然后在代码中我为每个测试写下了限制 val timeLimit: Span = Span(2000, Millis)
这是由特征定义的(我们正在覆盖它)。
直到我按照 Rumoku 在
override val defaultTestInterruptor: Interruptor = new Interruptor {
override def apply(testThread: Thread): Unit = {
println("Kindly die")
testThread.stop() // deprecated. unsafe. do not use
}}
希望对你有帮助
关于scalatest Flatspec : Timeout for entire class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47379756/
我知道单元测试已损坏: it should "be true" in { assert(false) } 但是我现在不想修复它,而是将其标记为已跳过。在测试运行的输出中应该有一个高度可见且非常简洁
使用最高级的 Flatspec 和 TimeLimits 特性,我可以为一行代码设置超时,如下所示: import org.scalatest.time.SpanSugar._ import org.
在Scalatest中,我不清楚使用Spec与WordSpec的优缺点。我认为Javadoc提供了WordSpec和FlatSpec的某种程度的比较,但是我不知道Spec和WordSpec之间。 如果
作为 scala 初学者,我想标记集成测试,以便将它们排除在某些场景中运行之外(因为它们可能非常慢,并且可能由于外部更改/问题而中断)。 我以这种方式创建了标签 integration: import
我是一名优秀的程序员,十分优秀!