2017-05-28 63 views
2

我有一个需要很长时间才能运行的大型集成测试套件。这大部分是由于数据的设置。所以我需要减少设置测试数据所需的时间。 做了一些分析之后,我看到有一组测试有共同的设置(例如使用@Before注释)。JUnit具有自定义回滚规则的常见设置

有没有办法在spring和junit中设置一些回滚规则,以便可以在事务中设置数据(因此可以回滚),然后每个测试都会运行并回滚到此点。因此设置只需要一次。然后在组的最后,设置被回滚?

回答

0

JUnit提供各种test fixtures来完成你想要的。在JUnit 4中,你可以使用以下命令:

  • @BeforeClass:测试开始前执行一次
  • @AfterClass:执行测试结束。
  • @Before○:执行之前每个测试情况@Test)。
  • @After每个测试情况@Test)之后执行

因此,你可以使用@BeforeClass为一次性设置和@Before/@After为“回滚”。