我正在使用MySQL进行Spring Webflow编程,拥有数据库。
我有一些jUnit测试用例,Maven在使用测试数据库而不是dev数据库的构建上运行。我们有一个diff数据库,用于在dev中运行项目,然后是构建。
在运行项目之前,我需要在dev中设置一些测试数据。我正在使用jUnit作为maven中包/测试的一部分,但问题是测试是使用diff xml和数据库。你怎么认为我可以在运行之前让项目删除dev中的一些删除..有没有人知道maven的任何MySQL插件会运行脚本吗?
答案 0 :(得分:0)
我不完全确定你在问什么,但我认为你想在运行测试时在数据库中提供某些数据,并且在不同的环境中数据是不同的。
鉴于你已经在使用maven,我建议你为每个环境设置构建配置文件,这将允许你指定不同的数据库连接,实际上如果你实现了一个ORM,如hibernate,你甚至可以获得数据库模式和在测试/开发环境中,每次运行都会丢弃并重新创建数据。
此外,在您希望数据特定于测试运行并且数据不需要超出测试范围的环境中,实现内存数据库,例如可以使用数据播种的HSQL根据需要并在最后擦除,这将使您的开发环境更适合大量开发人员,并消除对物理数据库资源的需求。
答案 1 :(得分:0)
我认为你在询问如何在运行Junit测试之前设置数据库。如果是这样,我建议您查看DBUnit和(如另一个答案所示)内存数据库。