微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

当它是’Suites`的一部分时,如何避免两次执行ScalaTest规范

我正在使用 ScalaTest集成测试Play Framework应用程序.这个:
org.scalatest.Suites(列表中的规范)
执行规范列表中的每个测试.但是,如何避免每个规范也独立执行?他们被处决了两次.

一个例子:

import org.scalatest.{Suites,FreeSpec}

class browserSuiteSpec extends Suites(new AnonLoginSpec)
class AnonLoginSpec extends FreeSpec { ... }

现在我的AnonLoginSpec执行两次 – 首先作为browserSuiteSpec的一部分,然后独立执行,因为它是一个FreeSpec类. (将AnonLoginSpec更改为特征会导致编译错误.)

将AnonLoginSpec重命名为AnonLoginSpeX没有任何效果 – 它仍然被执行两次.
(我想也许ScalaTest正在寻找“Spec”后缀,我认为Specs2会这样做.)

The documentation没有提到这个问题(据我所知).

解决方法

如果您使用的是ScalaTest 2.0.M5或更高版本,则可以使用 @DoNotDiscover对每个套件进行批注.或者,您可以绕过发现,并通过将-s MainSuite传递给ScalaTest运行程序来指定主套件类名.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐