標籤:
1. 在Eclipse下安裝JUnit以及Hamcrest.
事前準備:下載好JUnit以及Hamcrest的jar包,提供github的下載網址
https://github.com/junit-team/junit/wiki/Download-and-Install
下載好了上述兩個jar包之後,開啟Eclipse,建立java project,右鍵完成好的工程檔案夾,選擇BuildPath選項。
之後,在彈出的視窗中進行如下操作:選中“Libraries”,點擊“Add ExternalJARS”,選擇上述兩個jar包的下載路徑,選中jar包即可。至此,安裝完畢。
2.在Eclipse下安裝Eclemma
安裝Eclemma的方法有許多,此處提供一種線上一鍵安裝的方法:
開啟Eclipse,選擇Help->EclipseMarketplace
在出現的視窗中,選擇Search,在輸入框中填入"eclemma",點擊搜尋按鈕後會顯示搜尋結果,直接在搜尋結果處點擊install即可。
安裝結束後,重啟Eclipse,在工具列出現這個按鈕的時候,說明eclemma安裝成功。
3.編寫程式碼完成三角形形狀的檢測
按照實驗要求,本次實驗要求進行測試的代碼為一段檢測一個三角形形狀的代碼:給定三角形三條邊的長度,判斷該三角形是等邊三角形還是等腰三角形還是普通三角形。
編寫三角形類,有三個成員變數,分別表示三角形的三條邊,根據三角形的構成條件,首先進行判斷,三條邊是否能夠組成一個三角形,如果不能,那麼返回一個錯誤資訊,表明輸入的三條邊不能組成一個三角形,屬於非法輸入。如果通過判斷表明這三條邊可以構成三角形,那麼再根據等邊三角形和等腰三角形的判定條件來判斷具體的形狀即可。具體代碼如下
public class tri { public int a,b,c; public tri(int a, int b,int c){ this.a=a; this.b=b; this.c=c; } public String judgement(){ if( a+b<=c || a+c<=b || b+c <=a){ return "Not a triangle"; }else{ if(a==b&&a==c){ return "equilateral"; }else if(a == c && b != c){ return "isosceles"; }else{ return "scalene"; } } } }
三角形類編寫完成之後,編寫測試函數,給定輸入和預期的輸出,通過JUnit來進行測試。
import org.junit.Test;import static org.junit.Assert.*;import org.junit.Before;public class main { public tri t; @Before public void create(){ t = new tri(); } @Test public void Test(){ t = new tri(1,1,1); assertEquals("equilateral",t.judgement()); t = new tri(1,2,2); assertEquals("isosceles",t.judgement()); t = new tri(2,1,2); assertEquals("isosceles",t.judgement()); t = new tri(1,2,3); assertEquals("Not a triangle",t.judgement()); t = new tri(3,4,5); assertEquals("scalene",t.judgement()); }} 4.測試結果
JUnit測試
Eclemma下的覆蓋率測試(程式碼片段)
【Software Testing】使用JUnit以及Eclemma進行單元測試和覆蓋測試