/ / define timeout на org.scalatest.FunSuite - скала, scalatest

определете timeout на org.scalatest.FunSuite - скала, scalatest

JUnit позволява тестове, които "избягват" или отнемат твърде дълго, за да бъдат автоматично неуспешни (https://github.com/junit-team/junit4/wiki/timeout-for-tests). Пример:

@Test(timeout=1000)
public void testWithTimeout() {
...
}

Как мога да определя времето използва org.scalatest.FunSuite?

Отговори:

2 за отговор № 1

Можеш да използваш failAfter от Timeouts Характерна черта:

import org.scalatest.concurrent.Timeouts
import org.scalatest.time.{Span, Millis}
import org.scalatest.FlatSpec

class MyTest extends FlatSpec with Timeouts {

"This test" should "do smhtg" in {

// Here the timeout is 100ms
failAfter(Span(100, Millis)) {
// fails due to timeout:
Thread.sleep(200)
// or succeeds before timeout:
// assert(true)
// or fails before timeout:
// assert(1 === 2)
}
}
}

което по този начин ще се провали, защото е изтекъл срок.