圖文Java之Junit入門案例(程式碼)
詳解Java之Junit入門案例(程式碼)
直接上程式碼示範:
public class ArrayList implements List { private int size = 0; private Object[] elementData = new Object[100]; public void add(Object o){ } public void add(int index, Object o){ } public Object get(int index){ return Object; } public Object remove(int index){ return Object; } public int size(){ return -1; } }
現在要測試的話怎麼辦呢?這時候Junit利器就可以用到了;
首先我們先建立一個Junit類別:
如果你直接在想要測試的class上右鍵的話可以直接勾選測試要方法如:
接著就是直接開始在裡面加方法了:
public class ArrayListTest { // 这里的@Test是必须的注释,就是告诉JUnit这里就是一个测试方法 @Test public void testGet() { static Object[] Data = new Object[]{1,2,3,4,5,6,7,8}; ArrayList test; // 添加数据到test中 ......... ......... //测试test 这里要说一下, //出了要assertEqual 判断值是否相等的话,其实还有assertFalse,assertNull等方法判断 assertEqual(Data[1],test.get(1)); } }
對,沒錯就是這麼簡單。如果你的類別沒問題的話,應該可以返回這樣的圖:
但是,有沒有發現,如果你在測試其他方法,如add,remove的話,都是要有一個預先填入了資料的ArrayList吧。難道我每次進行測試都需要執行這些嗎?
這樣就太冗餘了。這時候,JUnit裡自有高招:
public class ArrayListTest { static Object[] Data = new Object[]{1,2,3,4,5,6,7,8}; ArrayList test; //这个before注释可以理解成: //在执行每个@Test修饰的方法前都先要执行这个setUp,等于前置条件一样 @Before public void setUp() throws Exception{ test = new ArrayList(); for(Object data: Data){ test.add(data); } } //test function ; }
現在的話好像差不多行了,但是當有多個測試類別的時候怎麼辦,逐個運行?這不就跟創建main方法測試那樣差不多嗎?
所以Junit又提供了一個測試套件組:
//你现在有3个测试类 public class Test1{ @Test public void test(){ //...Test1 } } public class Test2{ @Test public void test(){ //...Test2 } } public class Test3{ @Test public void test(){ //...Test3 } } //创建一个测试套件类(测试套件可以互相叠加的): @RunWith(Suite.class) @Suite.SuiteClasses({test1.class,test2.class,test3.class }) public class SuitTest { //必须是public 修饰的,空类 }
除了上面寫的註解其實還有蠻多的,只是還沒用到就先不說了。 (太渣用不到這些,逃。),我就貼出來讓看官們瞅瞅先:
也就說這麼多吧,僅是入門而已。並沒有什麼高深的技術啊,思想什麼的。簡簡單單: -/。
在最後想分享一句話:
測試案例是用來證明你是沒有錯的,而不是證明你是對的。
我個人覺得這話真的是說到心坎裡去了。
以上是圖文Java之Junit入門案例(程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

公司安全軟件導致部分應用無法正常運行的排查與解決方法許多公司為了保障內部網絡安全,會部署安全軟件。 ...

系統對接中的字段映射處理在進行系統對接時,常常會遇到一個棘手的問題:如何將A系統的接口字段有效地映�...

在使用MyBatis-Plus或其他ORM框架進行數據庫操作時,經常需要根據實體類的屬性名構造查詢條件。如果每次都手動...

將姓名轉換為數字以實現排序的解決方案在許多應用場景中,用戶可能需要在群組中進行排序,尤其是在一個用...

在使用IntelliJIDEAUltimate版本啟動Spring...

Java對象與數組的轉換:深入探討強制類型轉換的風險與正確方法很多Java初學者會遇到將一個對象轉換成數組的�...

電商平台SKU和SPU表設計詳解本文將探討電商平台中SKU和SPU的數據庫設計問題,特別是如何處理用戶自定義銷售屬...

在使用TKMyBatis進行數據庫查詢時,如何優雅地獲取實體類變量名以構建查詢條件,是一個常見的難題。本文將針...
