日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Junit的导包及单元测试

發(fā)布時間:2024/1/1 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Junit的导包及单元测试 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、導Junit4的jar包

1、右鍵項目->properties->Java Bulid Path->Libraries->Add Libraries

2、選擇Junit,->Next

3、選擇Junit4,點擊Finish

4、這時已經(jīng)有Junit4了,點擊Apply and Close

5、項目已經(jīng)有Junit4 的jar包了

二、測試

例子:測試com.ts.bean 下的ReadData.java

ReadData.java的內容:

package com.ts.bean;/*** 讀取io數(shù)據(jù)* @author 汐子*/ import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.util.ArrayList;import com.ts.model.LeavingMessage;public class ReadData {public static String readStudent1(String path) {File br = new File(path);FileReader fileReader = null;char[] btuffer = new char[1024];StringBuffer data = new StringBuffer();try {fileReader = new FileReader(br);int len = 0;while ((len = fileReader.read(btuffer)) != -1) {data.append(btuffer, 0, len);}} catch (Exception e) {// TODO Auto-generated catch blockdata = null;e.printStackTrace();}finally {if (fileReader != null) {try {fileReader.close();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}}if (data != null) {return new String(data);}return null;} }

生成測試類:

右鍵要測試的類-> new ->other->搜索Junit,選擇Junit Test Case,點擊next

點擊next

選擇要測試的方法,然后點擊Finish

補充要實現(xiàn)的東西后,TestReadData.java 內容為:

package com.ts.bean.test;import org.junit.Test;import com.ts.bean.ReadData;public class TestReadData {@Testpublic void testReadStudent() {String data = ReadData.readStudent1("E:\\eclipse-jee-2019-06-R-win32-x86_64\\TeacherSystem\\src\\files\\Contact.txt");//文件路徑System.out.println(data.length());} }

右鍵測試類->Run As ->Junit Test,出現(xiàn)下面的情況即為正確運行

解釋圖片:JunitTest結果有Runs,Errors和Failures三個顯示狀態(tài)。

Runs顯示的是運行的測試用例數(shù)量

Failure指的是預期的結果與實際運行單元的結果不同所導致,例如當您使用assertEquals()或其它assertXXX()方法斷言失敗時,就會回報Failure,這時候您要檢查您的單元方法中的邏輯設計是否有誤。

Failure一般由單元測試使用的斷言方法判斷失敗所引起的,這就表示測試點發(fā)現(xiàn)了問題,就是說程序輸出的結果和我們預期的不一樣。

Error指的是程序沒有考慮到的情況,在斷言之前程式就因為某種錯誤引發(fā)例外而終止,例如在單元中存取某個陣列,因為存取超出索引而引發(fā)。Error是由異常引起的,它可以產(chǎn)生與測試代碼本身的錯誤,也可以是被測試代碼中的一個隱藏的bug。

Junit需要注意的東西:

1、Junit測試前要確保導入了JUnit所需要的jar包(junit-4.12.jar和hamcrest-core-1.3.jar);
2、被JUnit注解修飾的函數(shù)必須是用public修飾
3、被JUnit注解修飾的函數(shù)的返回值必須為void;
4、被JUnit注解修飾的函數(shù)不能用static修飾;
5、被JUnit注解修飾的函數(shù)不能帶有參數(shù)。
6、生成的測試類是半自動的

錯誤解決:

1、Junit測試出現(xiàn)Not yet implemented情況時:


是因為eclipse 生成的Junit Test Case的存根,它將使用添加測試方法fail(“Not yet implemented”)。如果忘記添加真實的實現(xiàn),則測試結果就會報錯,并且錯誤或斷言錯誤顯示尚未實現(xiàn)。

2、Junit測試時當有Class not found XXX情況出現(xiàn)時:
有效的解決方法:
Window->Preferences ->Java->Compiler->Building->Building Path Problems

如上圖,將Incomplete build path:和Circular dependencies:的Error 改成 Warning
然后點擊Apply and Close再次運行就成功了。

總結

以上是生活随笔為你收集整理的Junit的导包及单元测试的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。