【发布时间】:2014-09-29 13:31:12
【问题描述】:
我正在使用 maven 运行一套集成测试,大约 10% 的测试会失败或抛出错误。但是,当我启动服务器并从我的 IDE(intellij 想法)手动运行单个失败的测试时,它们都没有问题地通过。这个问题的原因可能是什么?
【问题讨论】:
-
错误是什么?也许您没有在每次测试之间正确清理资源。这可以解释为什么它们在单独运行时通过但在完全运行时失败。
-
我一直使用 mvn clean install 运行,所以我认为资源是干净的,或者您是指清理整个 .m2 存储库并再次运行测试?
-
失败和错误真的是随机的。当我正在测试一个数据库时,它会抛出诸如“表不存在”或“SQL 语法错误”之类的错误。
-
嗯,不,我指的是您的代码使用的资源,例如数据库。 clean maven 命令只清理生成的文件,但我认为这对你的情况没有帮助(因为一切都编译得很好)。也不要清理你的整个 .m2 存储库,我想不出这会有所帮助的情况。在任何情况下,依赖管理操作都应该通过 maven 命令和/或 pom 配置来完成。尝试隔离错误(例如“表不存在”错误),然后尝试找出表不存在的原因(可能是因为它是在其他地方创建的)。
-
每次运行测试套件之前,我都会清理整个数据库。这真的很奇怪,因为表的创建和删除都是由集成测试完成的,当由 maven 运行时它们会失败。谢谢您的帮助!我会尝试更深入地研究它。
标签: java maven intellij-idea integration-testing maven-plugin