Spring事务测试-在BeforeClass中准备数据
我想在@BeforeClass中创建一些数据,并在@Test方法中使用它们。 在所有测试完成(失败或成功)后,我想回滚数据Spring事务测试-在BeforeClass中准备数据,spring,transactions,Spring,Transactions,我想在@BeforeClass中创建一些数据,并在@Test方法中使用它们。 在所有测试完成(失败或成功)后,我想回滚数据 这可以通过使用注解@BeforeClass、@Transactional来实现,而不必显式地清理数据吗 我们这里也有类似的问题。我们的解决方案是为每个测试类提供一个嵌入式H2数据库(只需几秒钟即可设置第一个数据库;之后,它就不再那么引人注目了) 这允许我们将任何类型的测试数据加载到数据库中,而无需在所有测试运行后清理这些数据 每个测试仍然会获得自己的事务,因此在每个单独的测
这可以通过使用注解@BeforeClass、@Transactional来实现,而不必显式地清理数据吗 我们这里也有类似的问题。我们的解决方案是为每个测试类提供一个嵌入式H2数据库(只需几秒钟即可设置第一个数据库;之后,它就不再那么引人注目了) 这允许我们将任何类型的测试数据加载到数据库中,而无需在所有测试运行后清理这些数据 每个测试仍然会获得自己的事务,因此在每个单独的测试之后,每个类的数据库都会回滚到原始状态 为了调试测试,我们将使用
@Transactional(rollback=false)
注释单个测试,以便我们可以使用SQL工具查看数据库
另一个测试将检查所有测试类,查找此注释以确保没有人意外提交它