なぜこれが失敗しているのか分かりませんが、以前のクラス/テストのペアで正常に動作しました。JUnitテストケースが失敗する - toString
テスト:
@Test
public void testToString() {
OrderLine o = new OrderLine("Tuna 4 pack", 399 , 2);
String toStr = o.toString();
assertTrue("The toString method should be in the standard convention format",
toStr.startsWith("OrderLine:[") &&
toStr.contains("=" + o.getId() + ", ") &&
toStr.contains("=" + o.getUnitPrice() + ", ") &&
toStr.endsWith("=" + o.getQuantity() + "]"));
}
クラス関数:
public String toString()
{
return ("OrderLine:[ ID = " + id +
", UnitPrice = " + unitPrice +
", Quantity = " + quantity +
"]");
}
謝罪これに対する答えは本当に明らかである場合には、そのいくつかの時間のために私格子とされて、私は正確に持たない仲間の学生私は今すぐに助けを求めることができます。
'toStr.contains( "=" + o.getId()
これは読みやすさのためにそこに整流されたコードのオブジェクト指向を(私が知っている私のミスを)入れて+ ) 'vs' = "+ id + "、 ' - 文字列は空白で... –
あなたはeclipseの実際の違いをポップアップ表示する' assertEquals() 'を使うかもしれません... –
それは非常に明白です。あなたのtoString()メソッドは各キーとその値の間に "="を持つ各キーと値のペアを返しますが、テストでは各キーとその値の間に "="(スペースは含まない) –