我过去使用的一种技术是通过简单地从标准“测试数据库”复制数据库并在测试中使用它来从头开始重新创建数据库。
此技术适用于:
这具有以下优点:
以及以下缺点:
我将它与 Oracle 作为生产/集成数据库和 hsqldb 作为测试数据库一起使用。它工作得很好。hsqldb 是单个文件,因此很容易复制。
因此,在@Before 中,使用hsqldb,将文件复制到诸如target/it/database/name_of_test.script 之类的位置。这是在测试中得到的。
在@After 中,您删除文件(或只是保留它,谁在乎)。使用 hsqldb,您还需要执行 SHUTDOWN,以便您可以删除该文件。
您还可以使用从ExternalResource扩展的@Rule,这是管理资源的更好方法。
另一个提示是,如果您使用 maven 或类似的东西,您可以在 target 中创建数据库。我使用目标/它。这样,当我执行和 mvn clean 时,数据库的副本会被删除。对于我的批次,我实际上也将所有其他属性文件等复制到此目录中,因此我也没有在奇怪的地方出现任何文件。
| 归档时间: |
|
| 查看次数: |
3473 次 |
| 最近记录: |