我有一篇文章描述了類結構a enum static variable reference between java但是當我開始完成測試時,我遇到了一個微不足道的錯誤,我創建了ArrayList,但調試語句顯示了我Class對象是創建的新列表項或構造函數的默認值。枚舉測試junit arraylist被覆蓋reinstantiating不起作用
@Test
public GoodsTest()
clearProductMaps();
Goods item = new Goods();
calendar.set(Calendar.MONTH, Calendar.JULY);
calendar.set(Calendar.DAY_OF_MONTH, 21);
calendar.set(Calendar.YEAR, 2016);
date = calendar.getTime();
item.setName("FirstItem_A");
item.setPrice(4.10);
item.setStatus(Library.STATUSES.US);
item.setDate(date);
actualGoods.add(0,item);
item = new Goods();
item.setProductName("FirstItem_A");
item.setPrice(3.70);
item.setStatus(Library.STATUSES.ME);
calendar.set(Calendar.MONTH, Calendar.AUGUST);
date = calendar.getTime();
item.setDate(date);
actualGoods.add(item);
System.out.println("debug " + actualGoods.get(0).getStatus());
}
我的clearProductMaps只是強制列表是空的測試。
print語句:調試美國
對不起,但不知道你在問什麼。不知道你的測試應該做什麼(「是的,GoodsTest」,但具體是什麼?)指出你的代碼有一個問題:錯誤的命名。變量名稱以小寫字母開頭,「Item」 - 應該是什麼?你也有「goodsItem」。和calendear和日期。只發布沒有變量聲明的測試方法並沒有幫助。請注意:關於您的代碼的任何內容都不是微不足道的**。所有這一切都令人困惑**。然後:如果輸出令你感到困惑;那麼請請:在這裏提供輸出。我們不是巫師! – GhostCat
我們如何知道你看到了什麼?我們如何知道真實物品(0)和實際物品(1)之間的差異;因爲你只顯示你的代碼的一部分。嚴重的是:你應該試着退後一步,首先從你正在做的事情中獲得**混淆**。專注於小方面,並逐個處理它們。 – GhostCat
請發表[mcve] – 2016-08-25 05:44:07