標籤:
1:什麼是Annotation?
Annotation,即“@xxx”(如@Before,@After,@Test(timeout=xxx),@ignore),這個單詞一般是翻譯成中繼資料,是JAVA的一個新特性。
主流的單元測試工具之-JAVA新特性-Annotation - groupthreetogether - group部落格
2:中繼資料的簡單介紹:
@Before:
使用了該中繼資料的方法在每個測試方法執行之前都要執行一次。
@After:
使用了該中繼資料的方法在每個測試方法執行之後要執行一次。
注意:@Before和@After標示的方法只能各有一個。這個相當於取代了JUnit以前版本中的setUp和tearDown方法,當然你還可以繼續叫這個名字,不過JUnit不會霸道的要求你這麼做了。
@Test(expected=*.class)
在JUnit4.0之前,對錯誤的測試,我們只能通過fail來產生一個錯誤,並在try塊裡面assertTrue(true)來測試。現在,通過@Test中繼資料中的expected屬性。expected屬性的值是一個異常的類型
@Test(timeout=xxx):
該中繼資料傳入了一個時間(毫秒)給測試方法,
如果測試方法在制定的時間之內沒有運行完,則測試也失敗。
@ignore:
該中繼資料標記的測試方法在測試中會被忽略。當測試的方法還沒有實現,或者測試的方法已經過時,或者在某種條件下才能測試該方法(比如需要一個資料庫聯結,而在本地測試的時候,資料庫並沒有串連),那麼使用該標籤來標示這個方法。同時,你可以為該標籤傳遞一個String的參數,來表明為什麼會忽略這個測試方法。比如:@lgnore(“該方法還沒有實現”),在執行的時候,僅會報告該方法沒有實現,而不會運行測試方法。
3:在JAVA中用Annotation進行單元測試:
在這裡定義兩個方法:
max(int x,int y); //兩數中最大的
min(int x,int y); //兩數中最小的
具體過程:(大家按我說的做,先體驗體驗)
a:開啟Exlipse,建立一個項目Junit_Test(名字隨便起);
主流的單元測試工具之-JAVA新特性-Annotation - groupthreetogether - group部落格
b:點擊下一步,選擇“庫”;
主流的單元測試工具之-JAVA新特性-Annotation - groupthreetogether - group部落格b:點擊下一步,出現的頁面選擇:
c:選擇右側的“添加庫”,在出現的頁面選擇“JUnit”;
主流的單元測試工具之-JAVA新特性-Annotation - groupthreetogether - group部落格
d:點擊下一步,然後點擊完成!
主流的單元測試工具之-JAVA新特性-Annotation - groupthreetogether - group部落格
e:然後在當前項目下,建一個包,一個類,寫入代碼:如下:
public class printfAnnotation {
int a,b;
public void max(int x,int y){
int maxNum;
if(x<y)
maxNum=y;
else{
maxNum=x;
}
System.out.println(maxNum);
}
public void min(int x,int y){
int minNum;
if(x<y)
minNum=x;
else{
minNum=y;
}
System.out.println(minNum);
}
} 既:
主流的單元測試工具之-JAVA新特性-Annotation - groupthreetogether - group部落格
f:在左側的類名,點擊右鍵——〉建立——〉JUnit測試案例,出現的頁面點擊下一步:
主流的單元測試工具之-JAVA新特性-Annotation - groupthreetogether - group部落格
g:在選擇你自己代碼所寫的方法max();min();單擊完成。
主流的單元測試工具之-JAVA新特性-Annotation - groupthreetogether - group部落格
h:出現的頁面中的代碼 fail("尚未實現");,刪除掉這條代碼:寫入new printfAnnotation().max(5,6);
(註:我唯寫了一個方法 testMin()方法沒寫)
主流的單元測試工具之-JAVA新特性-Annotation - groupthreetogether - group部落格
i:選擇方法名,點擊右鍵——〉調試方式——〉JUnit測試,出現如下結果:
主流的單元測試工具之-JAVA新特性-Annotation - groupthreetogether - group部落格
(注,左側出現綠條表明成功,控制台出現max(5,6)的測試結果,6主流的單元測試工具之-JAVA新特性-Annotation - groupthreetogether - group部落格
4總結:
大家多瞭解瞭解,不止這一種測試方式,但這種方式要求每個人必會!
謝謝大家指出我的錯誤,共同進步!
關於Annotation(元註解),大家上網多查查!
主流的單元測試工具之-JAVA新特性-Annotation 寫組長 梁偉龍