常見的Robotium測試的問題總結

2022-04-30 15:03:11 字數 1901 閱讀 2530

常見的

robotium

測試的問題總結:(從別處拿來的先mark一下)

1、robotium

的 測試類activityinstrumentationtestcase2繼承了testcase類,即robotiom的測試類是junit3的例項, 並沒有junit4的特徵,比如通過annotate的方式來識別子類的新特徵,沒不能實現@beforeclass,@afterclass等特徵。只 能通過寫setup和teardown,以及test開頭的測試用例的方式進行測試case書寫。

3、 有的activity點選後不能獲取焦點,可以通過另外的方式獲取activity的內容,比如activity act = solo.getcurrentactivity();獲取當前的activity,然後通過act.findviewbyid的方式獲取控制項。

4、多個螢幕的情況,可以通過滾屏的方式滑動,solo.scrolltoside(solo.left),如果多屏屬於乙個activity,則不需要滑動也能執行case獲取資料。

5、 有時text view或者button的click方法會失效,咋辦?答案是在被測程式的androidmanifest.xml檔案裡加上這麼一 句:就行了。唉,當時為了找到這個解決方法可浪費了俺不少時間啊,最後在官網上找到答案了。

6、 如果要想在robotium的測試程式裡讀寫sd card腫麼辦?答案是在被測程式的androidmanifest.xml檔案裡加上

< /uses-permission>。注意是在被測程式裡加上,在測試程式本身的manifest檔案裡加會很坑爹的。

7、 listview動態新增item如何判斷新增成功。可從新增前及新增後item個 數判斷,先確定新增item的屬性,再通過相應的方法獲取item。比如新增乙個item可能需要三個textview,那麼通過 getcurrenttextviews(view)前後獲取到的個數差就相差三個。比如新增黑名單到黑名單列表。

(1)有的listview只有web,或者主要是文字,可以通過getitematposition(i).tostring()的方法獲取第幾行的內容。

solo.clickontext(chooseprovpage.getlistview().getitematposition(i).tostring());

(2)有的listview包含多個testview或者button,可以通過findviewbyid的方法得到某一行的一項的內容。

8、無法捕獲toast,這個有點不明白。大概實驗了一下,可以使用waitfortext這個函式來捕獲文字,這個方法返回值是布林型的,所以返回true就是找到了。

9、結果判斷

(1)waitfortext

該方法適用於點選操作後需要一點時間才返回結果的結果判斷。比如聯網操作,可以設定適當的延時,等待返回結果,判斷結果更加正確。

(2)assertactivity

該方法適用於activity時,可以判斷點選操作切換activity是否正確,可以與waitfortext配合使用。

(3)searchtext+assert

當有edittext時,輸入內容後,可通過searchtext查詢輸入內容是否是預期結果,再將返回結果判斷。

注:有些edittext的內容無法通過searchtext,原因暫時沒找到。比如:手動新增黑名單時的名稱及號碼的輸入框。

八、robotium

專案的執行:

有兩種方式,一種是通過eclipse;一種是通過命令列。

1、 eclipse

run as android junit test,可以跑整個測試工程,也可以跑單個測試用例。

2、命令列

adb install ****test.apk

adb shell am instrument testpackagename/android.test.instrumentationtestrunner

解決Robotium測試用例crash問題

今天遇到乙個棘手的問題 用robotium框架真機測試客戶端時 跑到一半會crash 搜了一堆資料終於解決了 我的程式引起crash主要原因有兩個 1.用robotium測試框架跑多個用例 寫在同乙個類裡 只有第乙個通過,第二個會卡頓,導致crash 原因是若同乙個類裡寫多個測試方法,每個測試方法都...

python常見的問題 python常見問題集錦

webdriverwait 注意內部條件的括號必須是雙層,如 by.id,kw 判斷title,返回布林值 判斷title,返回布林值 webdriverwait driver,10 until ec.presence of element located by.id,kw 判斷某個元素是否被加到了...

大資料測試之ETL測試工具和面試常見的問題及答案

自 概述 商業資訊和資料對於任何乙個企業而言都是至關重要的。現在很多公司都投入了大量的人力 資金和時間對這些資訊 資料進行分析和整理。資料的分析和整理已經獲得了巨大的潛在市場,因此為了使得這個過程更為簡單,越來越多的軟體 商引入了etl 測試工具。所以我們需要根據企業的不同業務結構和模型,在選擇et...