您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
IntelliJ IDEA中如何使用JUnit4
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2016/5/16 15:54:24 ] 推薦標(biāo)簽:單元測試 軟件測試

  背景
  近參與了一個(gè)Anroid醫(yī)療項(xiàng)目,其中項(xiàng)目底層有很多基礎(chǔ)類及通訊類,而且很多涉及復(fù)雜的字節(jié)操作還有多線程同步及狀態(tài)機(jī)處理。這樣的項(xiàng)目做一下TDD還是必要的,盡量項(xiàng)目前期把風(fēng)險(xiǎn)降低一些。
  現(xiàn)在的問題是本人使用的是IntelliJ開發(fā)的Android項(xiàng)目,剛開始還真不知道怎么下手。在參考了一些資料后,總結(jié)了一下IntelliJ中配置JUnit測試環(huán)境的步驟,希望對大家有幫助。
  環(huán)境:
  操作系統(tǒng):Windows 7
  IntelliJ版本:13.1
  Android SDK API:19
  Java Version:1.7
  JUnit 4子版本:JUnit 4.11(IntelliJ自帶)
  步驟:
  一、在項(xiàng)目的AndroidManifest.xml文件中做如下更改:
  在application節(jié)點(diǎn)下添加
  <uses-library android:name="android.test.runner"/>,如圖:

  在根節(jié)點(diǎn)下添加如下內(nèi)容:

  其中targetPackage跟你所在項(xiàng)目的包名相同(參見你的AppManifest.xml文件頂部:

  二、為你所在項(xiàng)目添加如下jar包引用
  1、junit-4.11
  2、harmcrest-core-1.3
  3、annotations
  三、調(diào)整項(xiàng)目對jar包的引用順序

  做這個(gè)調(diào)整是因?yàn)槲覀兪褂玫腁ndroid API中包含了JUnit 3.8,默認(rèn)SDK是放在前面的,否則代碼中的Junit會被認(rèn)為是Junit 3.8,那你只能使用Junit 3的測試方式了。
  四、在項(xiàng)目目錄樹中,創(chuàng)建一個(gè)與src平級的目錄用于存放所有的測試類。
  簡單起見我使用的是tests.

  除了創(chuàng)建目錄,我們還需要指定新創(chuàng)建的目錄為測試根目錄:
  右鍵tests目錄,選擇'Mark Directory As'--->'Test Sources Root'

  五、在你的測試根目錄下創(chuàng)建你的測試分類目錄及具體的測試類
  在測試類內(nèi)部你需要的只是給測試方法加上@Test標(biāo)注。
  六、運(yùn)行你的測試
  1、在代碼編輯界面,在你的測試方法體中點(diǎn)擊右鍵,在彈出的菜單中選中以JUnit的方式運(yùn)行

  這種方式非常適合剛寫完測試,亟待看到某個(gè)測試的運(yùn)行結(jié)果的場景。
  還有一種使用快捷鍵的方式來單獨(dú)運(yùn)行某個(gè)測試,我們只需要將文本焦點(diǎn)切換到某個(gè)測試方法中,然后在使用組合鍵Ctrl+Shift+F10可以達(dá)到同上面一樣的測試效果。
  2、編輯運(yùn)行Configuration
  點(diǎn)擊Configuration按鈕,在彈出界面中按如下步驟創(chuàng)建一個(gè)JUnit運(yùn)行配置

  在彈出的配置窗口做簡單的配置。具體配置細(xì)節(jié)請參見本文參考部分的《IntelliJ IDEA對JUnit支持的官方文檔》部分。
  這種方式適合于批量執(zhí)行測試的場景。
  回顧JUnit3的使用方式
  1、讓你的測試類繼承自Testcase
  2、每個(gè)測試方法名必須以小寫test為前綴
  備注:IntelliJ IDEA已經(jīng)內(nèi)部支持JUnit4,Android SDK中也至少對JUnit3做了支持,因此并不需要再從Maven中對JUnit進(jìn)行依賴管控。除非你需要使用新的JUnit中的某項(xiàng)特性。
  參考:
  在IntelliJ IDEA的項(xiàng)目中開啟Annotations
  https://www.jetbrains.com/idea/help/enabling-annotations.html
  IntelliJ IDEA對JUnit支持的官方文檔
  https://confluence.jetbrains.com/display/IntelliJIDEA/Unit+Testing+and+Code+Coverage
  IntelliJ IDEA提供的JUnit測試的Sample項(xiàng)目
  https://github.com/JetBrains/intellij-samples/tree/master/unit-tests-example
  ADT中如何配置JUnit
  http://blog.csdn.net/huangbiao86/article/details/6709742
  JUnit4測試說明:
  http://blog.csdn.net/xuxuxiaojie/article/details/5628671
  JUnit4在IntelliJ IDEA中的使用(應(yīng)該有三篇,但是只有后兩篇可見?赡艿谝黄菍⑴渲玫,但是不可見--有點(diǎn)遺憾)
  http://blog.16 .com/xianfuying@126/blog/static/2196000520110932132970/
  Android單元測試初探--Instrumentation
  http://www.oschina.net/question/54100_27061
  IntelliJ IDEA和ADT的持續(xù)測試插件Infinitest
  http://infinitest.github.io/
  ADT中使用JUnit的一個(gè)教程
  http://www.cnblogs.com/draem0507/archive/2013/04/25/3043557.html
  一個(gè)老程序員的Android測試驅(qū)動開發(fā)實(shí)踐系列3篇(主要側(cè)重界面交互測試)
  http://blog.csdn.net/yt7589/article/details/12427185
  http://blog.csdn.net/yt7589/article/details/12427185
  http://blog.csdn.net/yt7589/article/details/12445283

軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd