我正在运行一些JUnit测试,但是遇到了CompareFailure,但是我无法理解为什么,因为我的实际和预期看起来完全一样。

correctline = "   The following  quotation about writing  test programs for  a document" + "\n";


我的assertequals语句是:

assertEquals("wrong contents: line", correctline, output.toString());


错误是。

wrong contents: line expected:<...rams for  a document[]



  却是:

]

最佳答案

correctline前面的3个空格似乎有所不同。如果它们很重要,则您的测试告诉您output.toString()是错误的。如果它们不重要,则可以从correctline删除空格,或者对trim()进行调用以在开头或结尾留空白,这无关紧要:

assertEquals("wrong contents: printer", correctline.trim(),
    output.toString().trim());

10-08 00:02