如何在ScalaTest中按顺序运行类中的测试?
Posted
技术标签:
【中文标题】如何在ScalaTest中按顺序运行类中的测试?【英文标题】:How to run tests in a class sequentially in ScalaTest? 【发布时间】:2015-10-06 10:15:24 【问题描述】:我有一个扩展 org.scalatest.junit.JUnitSuite 的类。这个类有几个测试。我不希望这些测试并行运行。
我知道使用 Specs2 有多简单(使用 Specification 扩展类并在类中添加一行 sequential
),如下所示:How to run specifications sequentially。
我不想通过设置来更改构建文件:
parallelExecution in Test := false
我也不想使用标签顺序运行特定的测试文件。
我想要的只是一种方法来确保我班级中的所有测试都按顺序运行。这可能与 ScalaTest 吗?感谢任何示例测试/模板。
一个快速的谷歌搜索指向我:http://doc.scalatest.org/2.0/index.html#org.scalatest.Sequential
仅就我进行的几个测试而言,我认为创建 StepSuites 完全是矫枉过正。我不完全确定这是否是我的案子的处理方式!
【问题讨论】:
【参考方案1】:doc for org.scalatest.ParallelTestExecution
说
ScalaTest 并行运行测试套件的常规方法是并行运行不同的套件,但任何一个套件的测试都是按顺序运行的。
因此,如果您的测试在一个套件中,您似乎不需要做任何事情来获得您想要的东西。
【讨论】:
在我的测试中,测试需要实例化一个导致端口冲突的数据库。有没有办法按顺序运行套件?以上是关于如何在ScalaTest中按顺序运行类中的测试?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 SBT Jenkins 插件运行特定测试以进行 ScalaTest 测试