軟件測試(三)—— 參數化測試用例(Nextday.java)


import static org.junit.Assert.*; import java.lang.reflect.Array; import java.util.Arrays; import java.util.Collection; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import org.junit.runners.Parameterized.Parameters; //這個不可少 @RunWith(value = Parameterized.class) public class NextdayTest { private Date expected; private Date value; @Parameters public static Collection<Object[]> getTestParameters() { //有效等價類 Date d1 = new Date(5, 14, 2014); Date d2 = new Date(5, 13, 2014); //為負日期 // Date d3 = new Date(5, 0, 2014); // Date d4 = new Date(5, -1, 2014); //為零日期 // Date d5 = new Date(5, 1, 2014); // Date d6 = new Date(5, 0, 2014); //31號 Date d7 = new Date(8, 31, 2015); Date d8 = new Date(8, 30, 2015); Date d9 = new Date(7, 31, 2014); Date d10 = new Date(7, 30, 2014); Date d11 = new Date(7, 1, 2013); Date d12 = new Date(6, 30, 2013); //閏年 Date d13 = new Date(3, 1, 2004); Date d14 = new Date(2, 29, 2004); Date d15 = new Date(2, 29, 2004); Date d16 = new Date(2, 28, 2004); //400年是閏年 Date d17 = new Date(3, 1, 2000); Date d18 = new Date(2, 29, 2000); Date d19 = new Date(3, 1, 2013); Date d20 = new Date(2, 28, 2013); //被4整除,不被100整除  Date d23 = new Date(3, 1, 2100); Date d24 = new Date(2, 28, 2100); //到第二年 Date d21 = new Date(1, 1, 2014); Date d22 = new Date(12, 31, 2013); //下一個月 Date d25 = new Date(1, 31, 2013); Date d26 = new Date(1, 30, 2013); Date d27 = new Date(2, 1, 2013); Date d28 = new Date(1, 31, 2013); Date d29 = new Date(4, 1, 2014); Date d30 = new Date(3, 31, 2014); Date d31 = new Date(5, 1, 2014); Date d32 = new Date(4, 30, 2014); Date d33 = new Date(6, 1, 2014); Date d34 = new Date(5, 31, 2014); Date d35 = new Date(7, 1, 2014); Date d36 = new Date(6, 30, 2014); //左為 expected, 右為 value Object[][] date = new Object[][] { {d1, d2}, // {d3, d4}, // {d5, d6},  {d7, d8}, {d9, d10}, {d11, d12}, {d13, d14}, {d15, d16}, {d17, d18}, {d19, d20}, {d21, d22}, {d23, d24}, {d25, d26}, {d27, d28}, {d29, d30}, {d31, d32}, {d33, d34}, {d35, d36} }; return Arrays.asList(date); } //構造函數不要省略! public NextdayTest(Date expected, Date value) { super(); this.expected = expected; this.value = value; } @Test public void testNextDay() { assertEquals(expected, Nextday.nextDay(value)); } }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM