如果我得到文本的顏色,我得到: java.awt.Color [r = 234,g = 152,b = 28]應該對應橙色 ,但是當我執行斷言:這是不工作顏色java類
assertEquals(Color.ORANGE.ToString(),myText.getColor());
預期:java.awt.Color中[R = 255,G = 0,b = 0]但:java.awt.Color中[R = 234,G = 152,b = 28]
有什麼想法嗎?
如果我得到文本的顏色,我得到: java.awt.Color [r = 234,g = 152,b = 28]應該對應橙色 ,但是當我執行斷言:這是不工作顏色java類
assertEquals(Color.ORANGE.ToString(),myText.getColor());
預期:java.awt.Color中[R = 255,G = 0,b = 0]但:java.awt.Color中[R = 234,G = 152,b = 28]
有什麼想法嗎?
您正在比較String和Color對象。正確斷言是
assertEquals(Color.ORANGE, myText.getColor());
另外java.awt.Color.orange是new Color(255, 200, 0);
。
並且無論如何在Java/AWT/Color.java源ORANGE定義爲:
/**
* The color orange. In the default sRGB space.
*/
public final static Color orange = new Color(255, 200, 0);
/**
* The color orange. In the default sRGB space.
* @since 1.4
*/
public final static Color ORANGE = orange;
我得到:java.lang.AssertionError:期望值但是: –
lola
然後要麼你的測試是錯誤的,要麼你的代碼是錯誤的。事實上,顏色*在你的眼睛看起來是橙色的並不等於橙色,這種顏色非常精確地定義爲r = 255,g = 200,b = 0。 –