當前位置:首頁 » 操作系統 » robotium源碼

robotium源碼

發布時間: 2022-10-05 01:49:40

❶ 下述哪個不是目前開源的android app漏洞檢測工具

1、安卓黑盒測試工具1)包括本身自帶的monkey,Monkey是Android中的一個命令行工具,可以運行在模擬器里或實際設備中2)robotium與appium,這些工具用於黑盒的自動化測試。可以在有源碼或者只有APK的情況下對目標應用進行測試。提供了模仿用戶操作行為的API,比如在某個控制項上點擊,輸入Text等等。(推舉你可以研究一下這個工具,開源的,我有資料)2、白盒測試,Android在SDK中集成了JUnit框架。所以,你可以基於JUNIT框架進行安卓的白盒測試代碼開發3、安卓的測試方法其實與web測試方法大多類似,只是多了一些特殊的測試場景,例如-遍歷測試、故事驅動、適配測試、電量測試、弱網測試、流量測試等4、兼容性測試的話,一是可以利用虛擬機保證系統間的兼容性,但的還需要依靠真機測試,因為每個真機的上層API使用和渲染是不太一樣的如果你想要什麼資料的話或者想一起學習研究的話,可以給我發郵件:[email protected]

❷ robotium 如何處理沒有檢測到的控制項信息

solo.getView這個方法本身是做了assert斷言處理的,如果沒找到會斷言錯誤(源碼裡面可以看到)
想要做到你說的這個也是可以的,主要有2種方法:
1種方法是處理掉異常錯誤、可以try getview方法 catch裡面捕獲要寫junit.framework.AssertionFailedError
第二種方法可以重寫獲取控制項對象的方法:在方法裡面沒找到控制項就列印錯誤日誌就行了,反正你想做什麼處理都行,下面貼一個我寫的,供參考:
public static View myGetView(Solo solo, String id, int index, int times) {
long endTime = SystemClock.uptimeMillis() + times;
Activity activity$;
activity$ = solo.getCurrentActivity();

ArrayList<View> list_1 = new ArrayList<View>();
ArrayList<View> list_2 = new ArrayList<View>();

String packageName = activity$.getApplicationContext().getPackageName();

int viewId = activity$.getApplicationContext().getResources().getIdentifier(id, "id", packageName);
do {
list_1 = solo.getCurrentViews();
for (int i = 0; i < list_1.size(); i++) {

if (viewId == list_1.get(i).getId() && list_1.get(i).isShown()) {
list_2.add(list_1.get(i));
}
}
if (list_2.size() > index) {
return list_2.get(index);
} else {
list_1.clear();
list_2.clear();
}
if (SystemClock.uptimeMillis() >= endTime) {
Log.e(TAG, "未發現目標控制項++");
break;
}
} while (true);
return null;
}

❸ 手機app測試有哪些工具盒方法

手機app測試有可以利用以下幾種工具:

1、安卓黑盒測試工具

1)包括本身自帶的monkey,Monkey是Android中的一個命令行工具,可以運行在模擬器里或實際設備中;

2) robotium與appium,這些工具用於黑盒的自動化測試。可以在有源碼或者只有APK的情況下對目標應用進行測試。

2、白盒測試,Android在SDK中集成了JUnit框架。所以,你可以基於JUNIT框架進行安卓的白盒測試代碼開發;

3、安卓的測試方法其實與web測試方法大多類似,只是多了一些特殊的測試場景;

4、兼容性測試,一是可以利用虛擬機來保證系統間的兼容性,但更多的還需要依靠真機來測試;

(3)robotium源碼擴展閱讀:

APP測試要點:

1、功能測試

最基本的測試,主要是測試軟體app的功能點、業務邏輯;關聯性(主要是測試客戶端和PC的交互,客戶端處理完後,保證PC端數據同步且一致)

2、性能測試

cpu,佔用不超過10%,響應時間(包括app啟動和退出),滿足258原則,2秒以內用戶感覺很快,2-5秒感覺一般,5-8秒感覺很慢,但是能接受,8秒以上用戶無法接受,選擇離開,或者再次發送請求;

3、兼容性測試

手機app需要重點關注的,不同操作系統:android、iOS不同手機廠商,小米,華為等不同的手機屏幕解析度,與其他第三方app的兼容;

4、安裝卸載更新測試

也是手機app比較特別的測試點,安裝的路徑,手機還是sd卡上,高低版本的覆蓋安裝,內存不足時的安裝,安裝過程中出現中斷情況,第三方管理軟體中卸載app,卸載過程中出現中斷情況;

5、中斷或崩潰測試

中斷測試主要是測試app是否會出現crash情況。來電、簡訊、鬧鍾、低電量等,網路環境突然改變,或者網路中斷,例如隧道、電梯(離線支持),切換網路,例如數據連接切換到wifi外部設備。

比如充電,插耳機內存不足改變設備方向改變手機語言,例如英文多後台程序切換長時間開機並且長時間開啟app也可以用monkey來測試apk的穩定性,也能檢查出一些crash的問題;

6、安全測試

7、UI測試

❹ 如何根據單元測試xml結果 生成最終的測試報告

使用robotium進行Android應用進行自動化測試,之前用TMTS框架,但收集到的單元測試結果常常會少掉一些用例集。。窮則思變,Android的測試框架主要是通過InstrumentationTestRunner對被測應用進行控制與執行,因此可以對InstrumentationTestRunner進行擴展以完成測試結果收集,然後通過jenkins的Publish JUnit test result report插件得到結果報告。
1.新建一個java package,新建一個java類
源碼來自開源項目:https://code.google.com/p/nbandroid-utils/
源碼中生成的TEST-all.xml結果文件位於/data/data/com.example/files目錄下,要導出結果文件的話,需要手機擁有root許可權,比較麻煩,因此下面修改了文件存放路徑,有SD卡則文件位於SD卡的/robotium目錄下
代碼貼不下,詳細代碼請見http://blog.csdn.net/hunterno4/article/details/14485663
2.修改AndroidManifest.xml文件
將原來的:
[html] view plain
<instrumentation
android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.example" />
修改為:
[html] view plain
<instrumentation
android:name="com.example.test.instrumentation.InstrumentationTestRunner"
android:targetPackage="com.example" />

3.修改Run Configurations
右鍵測試工程>Run as >Run Configurations
在Test欄中,勾選Run all tests in the selected project,or package
這樣每次在Eclipse中運行時才會使用新的InstrumentationTestRunner
在Instrumentation runner處下拉選擇新寫的InstrumentationTestRunner
點擊Apply完成設置

4.命令行下運行測試用例
Running all tests: adb shell am instrument -w com.android.foo/com.example.test.instrumentation.InstrumentationTestRunner
Running a single testcase: adb shell am instrument -w -e class com.android.foo.FooTest com.android.foo/com.example.test.instrumentation.InstrumentationTestRunner
Running multiple tests: adb shell am instrument -w -e class com.android.foo.FooTest,com.android.foo.TooTest com.android.foo/com.example.test.instrumentation.InstrumentationTestRunner
命令行下運行測試用例與平時一樣,只要將原來的InstrumentationTestRunner換成新的InstrumentationTestRunner就行,
需要注意的是,由於每次命令行執行完畢,都會覆蓋原有的TEST-all.xml文件,即如果採用Running a single testcase方式運行多個測試用例集,則最後結果只會記錄最後一個用例集,因此建議採用Running multiple tests方式

5.運行完成後將手機中的文件導出
adb -s $ANDROID_AVD_DEVICE pull /mnt/sdcard/rototium/TEST-all.xml
其中$ANDROID_AVD_DEVICE為參數化的手機序列號

6.在jenkins中任務構建完成後即可使用Publish JUnit test result report插件分析得出單元測試報告

❺ Eclipse使用Maven導入Robotium源碼後報錯

關聯tomcat就好了,tomcat 的jar包也會導入到工程中,也可以手動添加。tomcat關聯如下:

  1. build path -->add libraries....

  2. server runtime(選擇)

  3. apache tomecat v6.0


❻ robotium做APP自動化測試,一定要了解源代碼的結構和意思才行嗎

要寫好一個自動化用例,不一定要了解源碼,但至少得知道提供API是什麼意思。
不然就是小孩吃飯,都在浪費,浪費公司的錢和資源,也是在浪費你的青春。還不如做手工。

❼ android Robotium自動化測試框架如何利用Android studio無源碼進行編碼

http://blog.csdn.net/w306695293/article/details/55798688,這個是我寫的,可以參考一下

熱點內容
hashtablephp 發布:2022-11-27 23:51:35 瀏覽:339
如何改變存儲空間大小華為手機 發布:2022-11-27 23:50:35 瀏覽:697
python郵件附件 發布:2022-11-27 23:46:37 瀏覽:762
手機tcp擁塞演算法選擇 發布:2022-11-27 23:45:43 瀏覽:937
爛橘子為什麼每次登錄密碼不對 發布:2022-11-27 23:44:36 瀏覽:795
寶盈新興產業靈活配置看哪個指數 發布:2022-11-27 23:42:22 瀏覽:780
資料庫中插入數據 發布:2022-11-27 23:42:12 瀏覽:2
美國戰備存儲 發布:2022-11-27 23:41:17 瀏覽:885
如何理解易經的密碼 發布:2022-11-27 23:39:07 瀏覽:1000
為什麼游戲分ios和安卓伺服器 發布:2022-11-27 23:37:30 瀏覽:921