Java dbunit断言未正确抛出故障
下面是一个测试用例,它测试org.dbunit.Assertion.assertEquals(ITable a,ITable b) 这里,DefaultTable的两个值都不匹配,JUnit仍然没有通过上述测试用例。我在eclipse中运行它,它会导致0个错误和0个失败,并且在testcase下进行了如下的无根测试:Java dbunit断言未正确抛出故障,java,maven,junit,assert,dbunit,Java,Maven,Junit,Assert,Dbunit,下面是一个测试用例,它测试org.dbunit.Assertion.assertEquals(ITable a,ITable b) 这里,DefaultTable的两个值都不匹配,JUnit仍然没有通过上述测试用例。我在eclipse中运行它,它会导致0个错误和0个失败,并且在testcase下进行了如下的无根测试: testAssertion [Runner: JUnit 4] [+] Unrooted Tests [Runner: JUnit 4] 我调试了DbUnitAPI,它会
testAssertion [Runner: JUnit 4]
[+] Unrooted Tests [Runner: JUnit 4]
我调试了DbUnitAPI,它会根据需要抛出数据不匹配异常,但最后从SpringJUnit4ClassRunner返回时,它不会作为测试用例失败而抛出
我想我这里少了些什么。请纠正我或让我知道一个解决办法。
谢谢你 断言是DBUnit抛出的断言错误 我发现获取确切异常原因的最佳方法是捕获它,例如:-
try
{
Assertion.assertEquals( expectedTable, actualTable );
}
catch ( AssertionError e )
{
logger.error( "Assertion failed with error : " + e.getMessage());
}
我所能说的就是,不断地让你的例子变得越来越简单,直到你发现发生了什么。@Daniel:谢谢你的反馈。我已经添加了一些注释,以使其更易于理解,我无法在这个示例中进一步说明,错误仍然存在。如果它抛出任何错误,我可以在谷歌上搜索一下,但不会抛出任何失败/错误:(
try
{
Assertion.assertEquals( expectedTable, actualTable );
}
catch ( AssertionError e )
{
logger.error( "Assertion failed with error : " + e.getMessage());
}