我一直致力于为我的java项目创建一个单元测试,即使我没有断言,我的测试也会继续失败。
读完堆栈跟踪后,我注意到我正在使用的retsIQ库中的一个方法是抛出一个断言错误。无论如何我可以忽略这个吗?我真的不反编译并重新编译模块。
我还应该提一下,如果它不作为测试运行,那么这个确切的代码可以正常工作。
这是我的测试图片:
以下是一张未在测试中运行的图片:
答案 0 :(得分:1)
我会假设两件事:1)你的项目是以maven为基础的; 2)这两个代码片段是完全相同的(除了assertTrue(true);
行,顺便说一下,什么也没做。)
也许您的问题是由“运行”和“测试”配置具有不同的类路径引起的。您可能在测试类路径中有一个错误的某个库版本,甚至错过了一些库,这最终会导致此异常。
我建议你重新检查pom.xml中所有测试范围的依赖项。您还可以使用Maven Dependency Plugin打印项目依赖关系树(但我不确定它是否可以单独打印测试依赖项):
mvn dependency:tree -Dverbose
或者,您可以转到“项目结构”> “模块”> Intellij Idea中的“依赖关系”选项卡,查看具有“测试”范围的所有条目。
答案 1 :(得分:0)
从堆栈跟踪中,看起来在解析响应时发现了意外的数据。诊断问题的最佳方法是在SearchCompactReader.parse()
(第16行)中设置断点,并在调试器中运行测试。