亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用 junit 或 testng 為 Queue 接口類創建簡單的單元測試?

如何使用 junit 或 testng 為 Queue 接口類創建簡單的單元測試?

嚕嚕噠 2022-05-12 18:43:45
我是 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());

}


查看完整回答
反對 回復 2022-05-12
?
繁華開滿天機

TA貢獻1816條經驗 獲得超4個贊

根據您的代碼,我建議:

  1. 首先,將主代碼放在另一個方法中,如果可能的話,放在另一個類中。

  2. 不是要求,但要避免新方法中的靜態。

  3. 閱讀單元測試

  4. 使用 jUnit5 進行單元測試,非常流行

  5. 可能,在下面,您想閱讀有關雙打的信息(例如 Mockito)

在您的情況下,我可以告訴您您的代碼不是“測試友好”,您想測試元素是否在隊列中,使用它自己的方法,或者使用類似 Mockito 的東西來驗證 add 是用值調用的你想測試,但為了讓你理解這一點,你應該了解更多關于雙打、模擬、存根的知識。


查看完整回答
反對 回復 2022-05-12
  • 2 回答
  • 0 關注
  • 116 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號