环境:groovy 2.1.5,gradle 1.6;使用TestNG 6.8进行测试。
我正在切换到Gradle并且粗糙的边缘很小,但对于this project我有间歇性的测试失败;一次测试,始终相同,至少有一半失败。它永远不会在IDEA中失败,并且在使用maven时从未失败过。
此测试很简单:包中包含核心JSON模式,我检查默认加载配置是否包含这些模式。相关模式为this one,失败的测试为here。
当测试失败时,报告说:
java.lang.AssertionError: expected [{"schema": "here"}] but found [{}]
// overly long stacktrace
现在,我使用的JSON库是Jackson(在本例中为2.1.5)。在2.1.x中曾经存在一个错误,它不能正确加载JSON对象并返回空对象,就像上面显示的那样。但这是在2.1.1。我有一大堆其他测试使用包含JSON对象的JSON文件,没有任何问题,所以似乎JSON文件正确加载...
我想诊断问题,但是我不知道从哪里开始......到目前为止,我唯一能够发现的是,groovy和gradle似乎都没有使用Jackson。或者,如果他们这样做,那就很好隐藏......
如何诊断问题?
编辑:我发现了另一个问题Gradle does not support parameterized tests;而这个测试就是其中之一。
编辑2:从那时起,我已经设法让TestNG完成报告......而且它实际上只对DRAFTV4失败了。间歇。