org.scalatest:全局设置(像之前的AllSuites一样?)

发布于 2024-12-20 17:36:24 字数 433 浏览 2 评论 0原文

我有一个 scala 应用程序,使用 org.scalatest 进行了一些测试。这些测试需要一些全局设置(和拆卸),以便管理测试数据库。

请不要告诉我我的测试不应该访问数据库,我应该使用 Java-DAO-Stub-WTF-Overkill-Way™ 来完成它:-)。

我正在使用 SBT 运行测试,它提供了一种在测试之前和之后执行代码的方法:

    testOptions in Test += Tests.Setup( () => println("Setup") )

    testOptions in Test += Tests.Cleanup( () => println("Cleanup") )

不幸的是,我无法访问那里有问题的类。毫不奇怪,将它们导入 build.sbt 也不起作用。

有什么想法吗?

I have a scala application with some test using org.scalatest. These test need some global setup (and teardown), in order to manage the test database.

Please don't tell me my tests should not hit the database and I should do it the Java-DAO-Stub-WTF-Overkill-Way™ :-).

I'm running the tests using SBT, which provides a way to execute code before and after test:

    testOptions in Test += Tests.Setup( () => println("Setup") )

    testOptions in Test += Tests.Cleanup( () => println("Cleanup") )

Unfortunately I cannot access the classes in question there. Unsurprisingly, importing them into build.sbt does not work either.

Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浅浅淡淡 2024-12-27 17:36:24

您可以使用 BeforeAndAfterAllBeforeAndAfter 特征,具体取决于您的需要。

之前和之后:

可以混合到需要之前调用方法的套件中的特征
并在执行套件之后。此特征允许执行代码
在所有测试和套件的嵌套套件之前和/或之后
运行。

因此,在这种情况下,您将定义一个 MasterSuite,其中包含所有其他套件/测试,从而扩展了此特征。

之前和之后:

可以混合到需要之前执行代码的套件中的特征
运行每个测试后。这个特性促进了一种测试风格
替换实例变量中保存的哪些可变夹具对象
或在每次测试或套件之前重新初始化。

You can use the BeforeAndAfterAll or BeforeAndAfter traits, depending upon your needs.

BeforeAndAfterAll:

Trait that can be mixed into suites that need methods invoked before
and after executing the suite. This trait allows code to be executed
before and/or after all the tests and nested suites of a suite are
run.

So in this instance, you would define a MasterSuite which contains all other Suites/Tests, which extends this trait.

BeforeAndAfter:

Trait that can be mixed into suites that need code executed before and
after running each test. This trait facilitates a style of testing in
which mutable fixture objects held in instance variables are replaced
or reinitialized before each test or suite.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文