2

我过去曾使用内存数据库编写过测试。

我想知道的是是否可以在spring、junit、java中编写测试,在内存数据库中使用,并且每次测试后数据不会回滚,而是保存在数据库中。

基本上,测试是相互依赖的?

有任何想法吗?

4

2 回答 2

1

回滚数据库更改与否取决于您。

但是单元测试应该相互独立。

DZone 最近一篇关于该主题的文章的小摘录:

使每个测试独立于所有其他测试

不要制作单元测试用例链。它会阻止您识别测试用例失败的根本原因,您将不得不调试代码。此外,它会产生依赖性,这意味着如果您必须更改一个测试用例,那么您需要对多个测试用例进行不必要的更改。

尝试使用 @Before 和 @After 方法为所有测试用例设置必要条件(如果有的话)。如果您需要多个东西来支持@Before 或@After 中的不同测试用例,那么请考虑创建新的Test 类。

于 2013-03-20T09:41:36.053 回答
1

你的测试应该是独立的。

但是,如果您愿意,我想您可以尝试使用 @Rollback 注释。

我没有尝试过,但在进行交易时在文档规范中看到过。

于 2013-03-20T09:43:07.240 回答