Java – Grails test-app在CI服务器上失败,但在开发者机器上失败
我有两台机器,一台Continuus集成服务器和一台开发机器.
两台机器运行相同版本的java,maven和grails,两者都运行Ubuntu. 一些证据: CI java -version java version "1.6.0_24" Java(TM) SE Runtime Environment (build 1.6.0_24-b07) Java HotSpot(TM) 64-Bit Server VM (build 19.1-b02,mixed mode) DEV java -version java version "1.6.0_24" Java(TM) SE Runtime Environment (build 1.6.0_24-b07) Java HotSpot(TM) 64-Bit Server VM (build 19.1-b02,mixed mode) CI mvn -version Apache Maven 2.2.1 (rdebian-1) Java version: 1.6.0_24 Java home: /usr/lib/jvm/java-6-sun-1.6.0.24/jre Default locale: en_US,platform encoding: UTF-8 OS name: "linux" version: "2.6.32-31-server" arch: "amd64" Family: "unix" DEV mvn -version Apache Maven 2.2.1 (rdebian-1) Java version: 1.6.0_24 Java home: /usr/lib/jvm/java-6-sun-1.6.0.24/jre Default locale: en_US,platform encoding: UTF-8 OS name: "linux" version: "2.6.32-31-generic" arch: "amd64" Family: "unix" CI grails Welcome to Grails 1.3.7 - http://grails.org/ Licensed under Apache Standard License 2.0 Grails home is set to: /usr/local/lib/grails-1.3.7 DEV grails Welcome to Grails 1.3.7 - http://grails.org/ Licensed under Apache Standard License 2.0 Grails home is set to: /home/netbrain/dev/apps/grails-1.3.7 我从两台机器上的版本控制中做了一个干净的检查,并删除了文件夹?/ .m2和?/ .ivy2,以避免任何不确定性. 当我在CI服务器上运行grails test-app时,6测试似乎失败了.当我们的DEV系统上的所有人都通过同样的情况. CI grails test-app Tests Completed in 28213ms ... ------------------------------------------------------- Tests passed: 14 Tests failed: 6 ------------------------------------------------------- DEV grails test-app Tests Completed in 25889ms ... ------------------------------------------------------- Tests passed: 20 Tests failed: 0 ------------------------------------------------------- 当我看到从测试输出中获取的错误消息时,我可以看到如下内容: junit.framework.AssertionFailedError: expected:<1> but was:<0> not-null property references a null or transient value 据我所知,测试在逻辑上是正确的,他们不应该“得到这些错误,特别是当几个获得”瞬态值“错误的测试没有存储到数据库的任何东西时! 对我来说,似乎问题出在hibernate / memory-database / test阶段的组合中. 导致此问题的环境之间存在一些差异.有没有人有任何关于如何进一步调试问题的提示? 再次感谢! 编辑 好的,所以这就是我试过的: >删除文件夹?/ .m2,?/ .ivy2,?/ .grails 但我仍然看到我的CI环境上的测试失败,但在开发机器上却没有. 编辑 一些新的发展.. 我尝试只运行CI上失败的测试,似乎在运行grails test-app:integration path.to.failing.tests时,他们都通过了!运行grails test-app导致那些测试失败! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |