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

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

更改參數化測試的名稱

更改參數化測試的名稱

江戶川亂折騰 2019-10-25 11:13:58
在JUnit4中使用參數化測試時,是否可以設置自己的自定義測試用例名稱?我想將默認設置更改為[Test class].runTest[n]有意義的設置。
查看完整描述

3 回答

?
一只斗牛犬

TA貢獻1784條經驗 獲得超2個贊

此功能使其成為JUnit 4.11的一部分。


要使用更改參數化測試的名稱,請說:


@Parameters(name="namestring")

namestring 是一個字符串,可以具有以下特殊占位符:


{index}-這組參數的索引。默認namestring值為{index}。

{0} -此測試調用的第一個參數值。

{1} -第二個參數值

等等

測試的最終名稱將是測試方法的名稱,后跟namestring方括號,如下所示。


例如(從單元測試改編為Parameterized注釋):


@RunWith(Parameterized.class)

static public class FibonacciTest {


    @Parameters( name = "{index}: fib({0})={1}" )

    public static Iterable<Object[]> data() {

        return Arrays.asList(new Object[][] { { 0, 0 }, { 1, 1 }, { 2, 1 },

                { 3, 2 }, { 4, 3 }, { 5, 5 }, { 6, 8 } });

    }


    private final int fInput;

    private final int fExpected;


    public FibonacciTest(int input, int expected) {

        fInput= input;

        fExpected= expected;

    }


    @Test

    public void testFib() {

        assertEquals(fExpected, fib(fInput));

    }


    private int fib(int x) {

        // TODO: actually calculate Fibonacci numbers

        return 0;

    }

}

將命名為testFib[1: fib(1)=1]和testFib[4: fib(4)=3]。(testFib名稱的一部分是的方法名稱@Test)。

查看完整回答
反對 回復 2019-10-25
  • 3 回答
  • 0 關注
  • 348 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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