我是 Java 新手,但我正在盡我所能盡快學習。我使用隊列接口在 Eclipse 中創建了一個類,并創建了一個元素數組(在我的例子中是動物)。在這個數組中,我添加了一個名為“tiger”的新元素。當我想使用 testng/junit 創建一個新類并嘗試添加一個簡單的單元測試來檢查新元素“tiger”是否正確添加到數組列表中時,我陷入了困境。我的隊列代碼如下:public static void main(String[] args) { String animals[] = {"cat","dog","pony","horse","cheetah"}; Queue<String> queue = new LinkedList<String>(); Collections.addAll(queue, animals); System.out.println(queue); queue.add("tiger"); System.out.println(queue);}請幫忙,我很樂意提供任何建議。
2 回答

當年話下
TA貢獻1890條經驗 獲得超9個贊
像這樣的東西:
@Test
public void test() {
//Given
String animals[] = {"cat","dog","pony","horse","cheetah"};
Queue<String> queue = new LinkedList<String>();
Collections.addAll(queue, animals);
//When
queue.add("tiger");
//Then
assertThat(queue, hasSize(6));
assertEquals("tiger",((LinkedList<String>) queue).getLast());
}

繁華開滿天機
TA貢獻1816條經驗 獲得超4個贊
根據您的代碼,我建議:
首先,將主代碼放在另一個方法中,如果可能的話,放在另一個類中。
不是要求,但要避免新方法中的靜態。
閱讀單元測試
使用 jUnit5 進行單元測試,非常流行
可能,在下面,您想閱讀有關雙打的信息(例如 Mockito)
在您的情況下,我可以告訴您您的代碼不是“測試友好”,您想測試元素是否在隊列中,使用它自己的方法,或者使用類似 Mockito 的東西來驗證 add 是用值調用的你想測試,但為了讓你理解這一點,你應該了解更多關于雙打、模擬、存根的知識。
添加回答
舉報
0/150
提交
取消