Android自動化測試(Jenkins+Robotium+Ant+Junit)[PART one]
前期的環境搭建和程式碼網上有很多資料,在這裡我就不一一細說了,詳細說一下我在整個過程中遇到的問題。
自動化測試一般的過程:
寫testcase;
執行testcase;
記錄log;
xml轉化為html;
1、 java.lang.ExceptionInInitializerError
我在整個的測試過程中碰到過還幾次這個error,開始查了很多資料,沒有解決,最後發現是路徑的問題,我在測試過程中用了像類似“C:/user/..”這樣的路徑,但是在Android模擬器上是找不到的,所以就會報ExceptionInInitializerError。 切記:是在Android模擬器上進行測試的,本機上的路徑是不可用的!
2、 log
在測試的過程中記錄日誌,我本來打算直接用log4j-1.2.17.jar,後來發現還是有一部分問題的,需要再加一個android-logging-log4j.jar,像平常用的log4j.peoperties也不能用在Android上,Android真正的log配置應該用下面這一段程式碼:
LogConfigurator logConfigurator = new LogConfigurator();
//sdcard
logConfigurator.setFileName(Environment.getExternalStorageDirectory()
+ File.separator
logConfigurator.setRootLevel(Level.DEBUG);
logConfigurator.setLevel("org.apache", Level.ERROR);
logConfigurator.setFilePattern("%-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n");
//%d %-5p [%c{2}]-[%L] %m%n
logConfigurator.setMaxFileSize(1024 * 1024 * 5);
logConfigurator.setImmediateFlush(true);
logConfigurator.configure();
log = Logger.getLogger(AndroidDocTest.class.getName());
3、 ClassNotFoundException
Test run failed: Instrumentation run failed due to 'java.lang.ClassNotFoundException'
xml檔案裡面的包名是否正確。這種問題一般是馬虎所導致的,仔細檢視一下你的AndroidManifest.xml中的包名是否正確。
4、 Android模擬器上檔案的讀寫問題:
我也是在本次測試過程中才發現問題,最開始用的平時用的檔案讀寫的方式,後來發現不對,Android檔案的讀寫和平時用的檔案讀寫是不同的,附程式碼:
InputStream in = null;
try {
in = new BufferedInputStream(new FileInputStream(file));
BufferedReader br= new BufferedReader(new InputStreamReader(in, "UTF-8"));
String tempString = null;
boolean found = false; //if find the testcase log
while ((tempString = br.readLine()) != null) {
}
}
相關推薦
Android自動化測試(Jenkins+Robotium+Ant+Junit)[PART one]
前期的環境搭建和程式碼網上有很多資料,在這裡我就不一一細說了,詳細說一下我在整個過程中遇到的問題。 自動化測試一般的過程: 寫testcase; 執行testcase; 記錄log; xml轉化為html; 1、 java.lang.ExceptionInInitiali
Android自動化測試框架Robotium
目前用於Android的測試框架已經有很多,比如:Monkey、Appium和Robotium等。Monkey這是大家比較熟悉的,Android自帶的系統工具。Monkey通過向系統傳送偽隨機的使用者事件流(如按鍵輸入、觸控式螢幕輸入、手勢輸入等),實現對正在開
android 自動化測試之Robotium 測試apk時遇到的問題
1.執行測試工程時提示: Test run failed: Permission Denial: starting instrumentation ComponentInfo{com.example.androidcalculator.test/andro
android基礎知識12:android自動化測試03—基於junit的android測試框架03
本文主要介紹如何執行junit測試。 7、如何執行junit測試 前面我們學習了很多JUnit的程式,在Android ADT外掛中已經為我們提供了很多這方面的功能,方便我們進行單元測試。但是如何進行單元測試,例如在ApiDemos\test提供
Android自動化測試遇到的問題及解決方法(1)
粘貼 png family 學習 再次 jmeter log 初始 mage 編者按:本文是小小小提姆在使用自動化測試工具TestWriter時的一點使用心得~我叫小小小提姆,是一名在IT行業的洪流中力爭上遊的軟件測試員,個人軟件測試擅長方向:1、功能測試(熟悉Fiddle
Android 自動化測試
unicode lac 回調 工作 info 部分 字段 結束 itl Python +Android +uiautomator test 在init中定義的方法 uiautomator 該模塊是android的一個python包裝uiautoma
android 自動化測試案例之 MonkeyScript
時間 運行 nbsp speed sources patch html 搜索功能 net #文件名 MonkeyScript.mks #功能: 使用monkey script測試app,此案例是測試搜索功能(輸入關鍵字,然後點擊搜索按鈕)#參考: http://blog.
Android自動化測試-UiAutomator環境搭建
ini runner 代碼 imp event before image lap interrupt Android自動化測試-UiAutomator環境搭建 一、環境準備 1. 安裝android sdk,並配置環境變量 2. 安裝android studio,國
Android 自動化測試 Emmagee
指定 hub .com 開始 加載 cpu使用率 性能測試 流量 and Emmagee 是一個性能測試小工具 用來監控指定被測應用在使用過程中占用機器的CPU, 內存,流量資源的性能小工具 Emmagee 介紹 Emmagee是網易杭州研究院QA團隊開發的一個簡單易上
在Mac OSX 上配置Appium+Android自動化測試環境
crm get exp 一個 shang time 點擊 host 設置代理 前提準備 開始正文之前,你需要準備好一些基本條件: 安裝好Mac OSX 操作系統的設備 能夠訪問中國局域網以外資源的方法(沒有也行,但很痛苦) 已經安裝好 homebrew 已經安裝好 Pyt
Android自動化測試之Monkeyrunner從零開始
控制 麻煩 關於 人員 bsp android開發 直接 記錄 自動 最近由於公司在組織一個Free CoDE的項目,也就是由大家自己選擇研究方向來做一些自己感興趣的研究。由於之前我學過一點點關於android的東西,並且目前android開發方興未艾如火如荼,但自動化測試
Android自動化測試腳本
keyboard 使用 red ref 4.4.2 for 自動化測試 from cli from appium import webdriverfrom time import sleepdesired_caps={}desired_caps[‘platformName‘
安卓自動化測試:Robotium(二)page object 模式完善測試框架
near pre image 控件 自動 coo IV warn activit 1、目前比較流行的設計模式就是page object,page object就是把頁面作為對象,在使用中傳遞頁面對象,來使用頁面對象中相應的成員或者方法,能更好的提現java的面向對象和封裝特
安卓自動化測試:Robotium(一)測試demo
for 切換 ini too demo edittext pin dex bsp 1、下載Robotium打開: http://code.google.com/p/robotium/下載:robotium-solo-3.4.1.jar (寫測試用例時需要依賴此包)2、需要把
uiautomator2任意操作Android自動化測試
簡介 uiautomator2 是一個Android UI自動化框架,支援Python編寫測試指令碼對裝置進行自動化。底層基於Google uiautomator,Google提供的uiautomator庫可以獲取螢幕上任意一個APP的任意一個控制元件屬性,並對其進行任意操作,但有兩
Android自動化測試之——MonkeyRunner(1)
一、MonkeyRunner是什麼 MonkeyRunner是使用Jython(使用Java程式語言實現的Python)寫出來的,它提供了多個API,通過monkeyrunner API 可以寫一個Python的程式來模擬操作控制Android裝置app,測試其穩定性並通過截圖可以方便地記錄出現的問題。
Android自動化測試之——MonkeyRunner(2)
一、MonkeyRunner API MonkeyRunner API包含了三個模組在com.android.monkeyruner包中: 1、MonkeyRunner 一類用於MonkeyRunner程式的實用方法。該類提供了一種將MonkeyRunner連線到裝置或模擬器的方法。它還提供了為monk
Android自動化測試之——MonkeyRunner(3)
本文主要介紹MonkeyDevice的方法。 上文中,使用MonkeyRunner方法連線裝置並返回一個MonkeyDevice物件,使用該物件呼叫MonkeyDevice方法可實現對裝置的操作。主要包括:點選、拖拽、截圖、按鍵、輸入內容 一、常量 MonkeyDevice的touch()、press(
Android自動化測試筆記
一、adb+monkey命令: 1.檢視連線裝置命令:adb devices 2.安裝軟體:adb install package(地址+包名) 3. 檢視手機裡面安裝程式包名:直接列出手機裡面全部安裝的包的名稱:adb shell pm list packages;還有一個可能在iMac機
Android自動化測試實戰(Java篇+主流工具+框架+指令碼)
第1章 課程簡介 我們為什麼要學自動化測試?如果你現在開啟一家招聘網站,輸入自動化測試,不難發現,自動化測試已經成為了軟體測試領域的大趨勢,測試人員能力的分水嶺,高薪福利的必爭地。但每個公司招聘要求中,技能點要求那麼多,我們如何進行系統的學習,成為一名合格的自動化測試工程師呢? 在這門課程將... 1-1 課