第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

如何在我的簡單算法上應用單元測試?

如何在我的簡單算法上應用單元測試?

千萬里不及你 2022-12-15 16:35:39
我有一個繪制圣誕樹的 Maven 項目。我需要對其實施單元測試,但我不知道該怎么做:/我已經(jīng)在我的 Maven 項目中設置了 JUnitfor (int i = 0; i < 4; i++) {   for (int j = 0; j < 10 - i; j++)    System.out.print(" ");   for (int k = 0; k < (2 * i + 1); k++)    System.out.print("*");   System.out.println();  }
查看完整描述

2 回答

?
HUWWW

TA貢獻1874條經(jīng)驗 獲得超12個贊

假設你畫圣誕樹的班級看起來或多或少像這樣:


class ChristmasTreeDrafter {


    void draw() {

        for (int i = 0; i < 4; i++) {

            for (int j = 0; j < 10 - i; j++)

                System.out.print(" ");

            for (int k = 0; k < (2 * i + 1); k++)

                System.out.print("*");

            System.out.println();

        }

    }

}

你可以這樣測試它:


public class ChristmasTreeDrafterTest {


    private final ByteArrayOutputStream out = new ByteArrayOutputStream();


    @Before

    public void setup() {

        System.setOut(new PrintStream(out));

    }


    @Test

    public void shouldDrawChristmasTree() {

        // given

        ChristmasTreeDrafter christmasTreeDrafter = new ChristmasTreeDrafter();


        // when

        christmasTreeDrafter.draw();


        // then

        Assert.assertEquals("          *\r\n" +

                "         ***\r\n" +

                "        *****\r\n" +

                "       *******\r\n", out.toString());

    }

}

在setup方法中,標準輸出流被重定向到out對象,因此您可以在then塊中驗證其內(nèi)容。不幸的是 Java 沒有多行字符串,所以這段代碼看起來很難看。為了提高可讀性,您可以將此內(nèi)容提取到文件中test/resources(假設默認的 maven 項目結(jié)構(gòu))。


查看完整回答
反對 回復 2022-12-15
?
SMILET

TA貢獻1796條經(jīng)驗 獲得超4個贊

在高層次上:該代碼的目的是打印由星號組成的樹或三角形。測試很簡單,運行代碼并查看它是否生成了所需的輸出。

由于代碼正在打印到 System.out,您需要將 System.out 重定向到一個文件或一個字符串(參見this),然后將生成的輸出與所需的輸出進行比較,以查看代碼是否正常運行。


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

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號