第一步:創建一個java工程,在工程中創建一個被單元測試的Student數據類,代碼如下:
1 package com.junittest.yu; 2 3 public class Student 4 { 5 private String name; 6 private String sex; 7 private int high; 8 private int age; 9 private String school; 10 11 public Student(String name, String sex ,int high, int age, String school) 12 { 13 this.name = name; 14 this.sex = sex; 15 this.high = high; 16 this.age = age; 17 this.school = school; 18 } 19 public String getName() 20 { 21 return name; 22 } 23 public void setName(String name) 24 { 25 this.name = name; 26 } 27 public String getSex() 28 { 29 return sex; 30 } 31 public void setSex(String sex) 32 { 33 this.sex = sex; 34 } 35 public int getHigh() 36 { 37 return high; 38 } 39 public void setHigh(int high) 40 { 41 this.high = high; 42 } 43 public int getAge() 44 { 45 return age; 46 } 47 public boolean setAge(int age) 48 { 49 if (age >25) 50 { 51 return false; 52 } 53 else 54 { 55 this.age = age; 56 return true; 57 } 58 } 59 60 61 public String getSchool() 62 { 63 return school; 64 } 65 public void setSchool(String school) 66 { 67 this.school = school; 68 } 69 70 }
部分截圖如下:
圖 1-1
第二步:在eclipse下單元測試這個類
首先,導入Junit包:選中java工程,點擊鼠標右鍵--->選擇屬性---->在窗口中選Java構建路徑---->選擇庫--->右側點擊添加庫---->在彈出的窗口列表中選中Junit---->下一步----->Junit 4---->完成--->確定
部分截圖如下:
圖 2-1
這樣Junit 4包就導完了,接下來就是創建測試類:選中java工程,點擊鼠標右鍵--->選擇新建--->JUnit測試用例--->按圖2-2編輯--->完成
圖 2-2
將測試類和被測試類放在不同的包中(也可以放在同一個包中,此處只是為了區別),測試類(1)代碼如下:
1 package com.junittest.yu.test; 2 3 import com.junittest.yu.Student; 4 5 import junit.framework.TestCase; 6 7 public class StudentTest01 extends TestCase 8 { 9 10 Student testStudent; 11 //此方法在執行每一個測試方法之前(測試用例)之前調用 12 @Override 13 protected void setUp() throws Exception 14 { 15 // TODO Auto-generated method stub 16 super.setUp(); 17 testStudent = new Student("djm", "boy", 178, 24, "齊魯工業"); 18 System.out.println("setUp()"); 19 } 20 21 //此方法在執行每一個測試方法之后調用 22 @Override 23 protected void tearDown() throws Exception 24 { 25 // TODO Auto-generated method stub 26 super.tearDown(); 27 System.out.println("tearDown()"); 28 } 29 30 //測試用例,測試Person對象的getSex()方法 31 public void testGetSex() 32 { 33 assertEquals("boy", testStudent.getSex()); 34 System.out.println("testGetSex()"); 35 } 36 37 //測試Person對象的getAge()方法 38 public void testGetAge() 39 { 40 assertEquals(24, testStudent.getAge()); 41 System.out.println("testGetAge()"); 42 } 43 }
完成后截圖如下:
圖 2-3
按以上方法創建測試類(2)代碼如下:
1 package com.junittest.yu.test; 2 3 4 import junit.framework.TestCase; 5 6 import com.junittest.yu.Student; 7 8 public class StudentTest extends TestCase 9 { 10 11 private Student testStudent; 12 13 @Override 14 protected void setUp() throws Exception 15 { 16 // TODO Auto-generated method stub 17 super.setUp(); 18 testStudent = new Student("steven_hu", "boy", 170 , 23, "上海理工"); 19 } 20 21 @Override 22 protected void tearDown() throws Exception 23 { 24 // TODO Auto-generated method stub 25 super.tearDown(); 26 } 27 28 public void testSetage() 29 { 30 assertTrue(testStudent.setAge(21)); 31 } 32 33 public void testGetSchool() 34 { 35 //預期值和實際值不一樣,測試時出現失敗(Failure) 36 assertEquals("南昌大學", testStudent.getSchool()); 37 } 38 39 public void testGetName() 40 { 41 assertEquals("hdy", testStudent.getName()); 42 } 43 }
完成截圖如下:
圖 2-3
如果同時需要一起測試以上這兩個測試類,可以通過TestSuite類實現,它相當於是一個套件,可以把所有測試類添進來一起運行測試
代碼如下:
1 package com.junittest.yu.test; 2 3 4 5 //import com.junittest.yu.test.StudentTest; 6 import com.junittest.yu.test.StudentTest01; 7 8 import junit.framework.Test; 9 import junit.framework.TestSuite; 10 11 public class AllTest 12 { 13 14 //static PersonTest p = new PersonTest(); 15 //static PersonTest p1 = new PersonTest(); 16 public static Test suite() 17 { 18 TestSuite suite = new TestSuite("Test for com.junittest.yu.test."); 19 //suite.addTest(p); 20 //suite.addTest(p1); 21 suite.addTestSuite(StudentTest.class); 22 suite.addTestSuite(StudentTest01.class); 23 return suite; 24 25 } 26 }
完成截圖如下:
圖 2-4
第三步:分別測試以上三個類(選中需要測試的類---->鼠標右鍵---->運行方式---->Junit 測試)
StudentTest01類測試結果截圖如下:
圖 3-1
StudentTest類測試結果截圖如下:
圖 3-2
AllTest類測試結果截圖如下:
圖 3-3
到此java類的單元測試就完成了。
第四步:將Eclipse中java代碼上傳到GitHub
圖 4-1
在java項目上右擊--->Team--->共享項目--->Git--->按圖4-2操作--->完成
圖 4-2
將代碼上傳到GitHub:
在java項目上右擊--->Team--->commit--->選中所有文件--->commit --->見圖4-3--->URI就是GitHub自己倉庫的地址--->見圖4-4--->見圖4-5--->圖4-6
圖 4-3
圖 4-4
圖 4-5
圖 4-6
至此上傳完成。
完成各階段所需時間:
1,被測類代碼編寫 30%
2,測試類代碼編寫 40%
3,運行測試 10%
4,上傳代碼到GitHub 20%
附:GitHub JUnit_Test庫地址 https://github.com/yujk1230/JUnit_Test
參考資料:http://my.oschina.net/Chaos777/blog/349167
http://blog.csdn.net/stevenhu_223/article/details/8269157