版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Android上的單元測(cè)試Android上的單元測(cè)試共13頁(yè),您現(xiàn)在瀏覽的是第1頁(yè)!Junit簡(jiǎn)介在Java下做單元測(cè)試的必用工具提供了一整套單元測(cè)試的框架測(cè)試用例的管理(TestSuite)。測(cè)試代碼的編寫(xiě)(TestCase)。測(cè)試的環(huán)境的建立(setUp、tearDown)。測(cè)試結(jié)果的判定(assert)。Android上的單元測(cè)試共13頁(yè),您現(xiàn)在瀏覽的是第2頁(yè)!在Android下能使用JUnit?Android提供了junit.framework包只測(cè)試一些和android無(wú)關(guān)的東西,如業(yè)務(wù)邏輯、數(shù)據(jù)封裝、數(shù)值計(jì)算,可使用Junit。要將classpath選項(xiàng)里的androidlibrary改成jre,并且添加junit.jar。測(cè)試關(guān)于Android系統(tǒng)中的API,如Activity界面、單擊界面上的按鈕、選擇菜單等不能使用Android上的單元測(cè)試共13頁(yè),您現(xiàn)在瀏覽的是第3頁(yè)!測(cè)試Activity需要些什么?創(chuàng)建Activity并控制Activity的生命周期提供同步的能力,因?yàn)锳ctivity的創(chuàng)建是異步的,當(dāng)調(diào)用startActivty()后,這個(gè)函數(shù)立刻返回,而不是等待Activity創(chuàng)建好后才返回Android上的單元測(cè)試共13頁(yè),您現(xiàn)在瀏覽的是第4頁(yè)!Android下TestCase的類說(shuō)明類說(shuō)明AndroidTestCase如果你要訪問(wèn)資源或其他東西依賴于Activity的環(huán)境,在這個(gè)類的基礎(chǔ)上擴(kuò)展。ActivityInstrumentationTestCase2
<TextendsActivity>這個(gè)類提供了一個(gè)單一的活動(dòng)功能測(cè)試ApplicationTestCase
<TextendsApplication>提供了一個(gè)框架,可以在受控環(huán)境中測(cè)試Application類ProviderTestCase2
<TextendsContentProvider>提供了一個(gè)框架,可以在受控環(huán)境中測(cè)試ContentProvider類ServiceTestCase
<TextendsService>提供了一個(gè)框架,可以在受控環(huán)境中測(cè)試ServiceTest類。Android上的單元測(cè)試共13頁(yè),您現(xiàn)在瀏覽的是第5頁(yè)!Instrumentation的功能添加、刪除ActivityMoniter控制Application、Activity的創(chuàng)建與生命周期控制Instrumentation的運(yùn)行發(fā)送按鍵、滾動(dòng)球等事件消息到當(dāng)前窗口同步某些操作(等待Activity創(chuàng)建完畢、等待主線程空閑、等待某個(gè)操作執(zhí)行完畢)Android上的單元測(cè)試共13頁(yè),您現(xiàn)在瀏覽的是第6頁(yè)!編寫(xiě)需要測(cè)試的主體代碼activitypackage.android.ut;
importandroid.app.activity;
importandroid.os.bundle;
publicclassandroidutextendsactivity{
publicvoidoncreate(bundlesavedinstancestate){
super.oncreate(savedinstancestate);
setcontentview(r.layout.main);
}
publicintadd(inta,intb)
{
returna+b;
}
}Android上的單元測(cè)試共13頁(yè),您現(xiàn)在瀏覽的是第7頁(yè)!修改manifest文件<?xmlversion="1.0"encoding="utf-8"?>
<manifestxmlns:android="schemas.android./apk/res/android"
package=".android.ut"
android:versioncode="1"
android:versionname="1.0.0">
<applicationandroid:icon="@drawable/icon"android:label="@string/app_name">
<activityandroid:name=".androidut"
android:label="@string/app_name">
<intent-filter>
<actionandroid:name="ent.action.main"/>
<categoryandroid:name="ent.category.launcher"/>
</intent-filter>
</activity>
<uses-libraryandroid:name="android.test.runner"/>
</application>
<instrumentationandroid:targetpackage=".android.ut"android:name="android.test.instrumentationtestrunner"android:label="testunittests"></instrumentation>
</manifest>也可以將instrumentation定義成一個(gè)單獨(dú)的apkAndroid上的單元測(cè)試共13頁(yè),您現(xiàn)在瀏覽的是第8頁(yè)!Android下TestCase的包結(jié)構(gòu)SDK功能說(shuō)明junit.frameworkJUnit測(cè)試框架junit.runner實(shí)用工具類支持JUnit測(cè)試框架android.testAndroid對(duì)JUnit測(cè)試框架的擴(kuò)展包android.test.mockAndroid的一些輔助類android.test.suitebuilder實(shí)用工具類,支持類的測(cè)試運(yùn)行包結(jié)構(gòu)Android上的單元測(cè)試共13頁(yè),您現(xiàn)在瀏覽的是第9頁(yè)!Instrumentation簡(jiǎn)介一種沒(méi)有圖形界面,具有啟動(dòng)能力,用于監(jiān)控其他類的工具類執(zhí)行applicationinstrumentation代碼的基類在任何應(yīng)用程序運(yùn)行前初始化可以監(jiān)測(cè)系統(tǒng)與應(yīng)用程序之間的交互在AndroidManifest.xml中的<instrumentation>標(biāo)簽進(jìn)行聲明Android上的單元測(cè)試共13頁(yè),您現(xiàn)在瀏覽的是第10頁(yè)!使用instrumentation單元測(cè)試的實(shí)例編寫(xiě)需要測(cè)試的主體代碼activity編寫(xiě)測(cè)試類修改manifest文件運(yùn)行Android上的單元測(cè)試共13頁(yè),您現(xiàn)在瀏覽的是第11頁(yè)!編寫(xiě)測(cè)試類package.android.ut.test;
import.android.ut.androidut;
importandroid.test.activityinstrumentationtestcase;
publicclasstestappextendsactivityinstrumentationtestcase<androidut>{
publictestapp()
{
super(".android.ut",androidut.class);
}
publicvoidtestsum()
{
assertequals(5,getactivity().add(2,3));
}
}Android上的單元測(cè)試共13頁(yè),您現(xiàn)在瀏覽的是第12頁(yè)!運(yùn)行在Development的Instrumentation內(nèi)運(yùn)行命令行運(yùn)行adbshellaminstrument–wXXX測(cè)試一個(gè)包adbshellaminstrument-wpackageName/android.test.InstrumentationTestRunner測(cè)試一個(gè)TestSuiteadbshellaminstrument-eclasspackageName.MyTestSuite-wpackageName/android.test.InstrumentationTestRunner測(cè)試一個(gè)TestCaseadbshellaminstrument-eclasspackageName.MyTestCase-wpackageName/a
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 輕冶料漿配料工崗前實(shí)操綜合知識(shí)考核試卷含答案
- 電力電容器卷制工崗前操作管理考核試卷含答案
- 農(nóng)化技術(shù)員風(fēng)險(xiǎn)評(píng)估與管理測(cè)試考核試卷含答案
- 電機(jī)車修配工誠(chéng)信道德水平考核試卷含答案
- 基因編輯精準(zhǔn)技術(shù)研究-洞察與解讀
- 協(xié)議兼容性評(píng)估-洞察與解讀
- 醫(yī)療設(shè)備回收再利用技術(shù)-洞察與解讀
- 彈性云存儲(chǔ)架構(gòu)設(shè)計(jì)-洞察與解讀
- 關(guān)鍵節(jié)點(diǎn)風(fēng)險(xiǎn)評(píng)估-洞察與解讀
- 化肥供應(yīng)鏈區(qū)塊鏈優(yōu)化-洞察與解讀
- 量子科普知識(shí)
- 2025至2030中國(guó)航空安全行業(yè)市場(chǎng)深度研究與戰(zhàn)略咨詢分析報(bào)告
- 華潤(rùn)燃?xì)?026屆校園招聘“菁英計(jì)劃·管培生”全面開(kāi)啟備考考試題庫(kù)及答案解析
- 成本管理論文開(kāi)題報(bào)告
- 華潤(rùn)集團(tuán)6S管理
- 新建粉煤灰填埋場(chǎng)施工方案
- 2025年提高缺氧耐受力食品行業(yè)分析報(bào)告及未來(lái)發(fā)展趨勢(shì)預(yù)測(cè)
- 小學(xué)三年級(jí)數(shù)學(xué)判斷題100題帶答案
- 互聯(lián)網(wǎng)運(yùn)維服務(wù)保障承諾函8篇范文
- 2025年(第十二屆)輸電技術(shù)大會(huì):基于可重構(gòu)智能表面(RIS)天線的相控陣無(wú)線通信技術(shù)及其在新型電力系統(tǒng)的應(yīng)用
- 電力三種人安全培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論