我有几个SPOCK测试类将组合在一起。我正在使用Junit 4.10。每个测试类都包含多种特征测试方法。
我想在运行任何测试案例之前执行一些设置步骤(例如将数据加载到数据库中,启动Web服务器),但在测试开始时只有一次。
我希望这种" Onetimesetup"方法仅被调用一次,即是否:
- 我在软件包中运行所有测试类(例如,如果将它们分组为测试套件)
- 我运行了一些测试类
- 我只运行一个测试类
- 我只在测试类中运行某种特征方法
通过阅读其他帖子,看来这就是Testng的@beforesuite所做的。
我知道Spock的SetupSpec()和ClearupSpec()方法,但它们仅在给定的测试类中起作用。我希望做类似" setuptestsuite()"之类的事情。如何在Spock中实现?
您可以编写全局扩展名,使用Junit测试套件,在辅助类中调用静态方法(例如setupSpec
),该方法仅执行一次工作,或者让构建工具完成工作。