Uiautomator-1.0入門
關於 自動化測試 其實並不是很難 主要環境配置起來 很麻煩 網上有不少部落格 但有些細節沒有說到 反倒API說了一大推 環境搭建起來了 其他就很簡單了
我們會用到 ANT 可以把 寫的測試類打成Jar包 Uiautomator-1.0 並不可以直接執行到手機裡 需要藉助ant 打成jar包的形式 Push到手機裡 在通過命令來執行 比較反人類 說真的 不推薦使用 Uiautomator2.0已經出來了 還是2.0好點
首先下載 ANT 在配置 環境變數 下載完了直接解壓就行 最好在C目錄(反正也不大) 全英文
點選我的電腦 系統屬性 高階系統設定 環境變數
ANT_HOME 為命名 後面是ant存放的路徑
ANT_HOME: C:\ant\apache-ant-1.9.2
CLASSPATH: %ANT_HOME%\lib
PATH: %ANT_HOME%\bin這樣我們環境變數就配置好了 可以進行下一步了
我是用的eclipse IDE看個人意願 (其實我最喜歡AS了)
新建專案 不用我說 隨便建個class寫就行 注意minSdkVersion不要低於16 16才有的自動化測試
測試程式碼 注意編碼 要UTF-8 不要用GBK 會報錯 對中文支援不是很好
public void testDemo() throws Exception{ //進入操作前,先用Home鍵進入待機介面 getUiDevice().pressHome(); UiObject object = new UiObject(new UiSelector().text("設定")); object.click(); }
接著就開始複雜的命令了 之前配置的ant 也可以用上了
1 找到自己的IDE 所在的目錄 一直進到 tools裡 複製全路徑 在到CMD 進入到目錄下 輸入android list進行查詢android 版本對應的id
值
我的android 當前的ID值 為10 記錄下來 下一步會用到
2 接著下一步的操作還在tools檔案下 進行操作 CMD 接著輸入命令android create uitest-project -n <name> -t <android-sdk-ID> -p <project_path>
比如:
android create uitest-project -n
Checker
name
就是要生成最後Jar包的名字 android sdk id 顧名思義 就是剛才我們查詢到的 id值 最後project_path
就是測試類所在的全路徑 此命令成功後會在 專案的根目錄下生成 build.xml檔案 如果沒有成功查詢之前的操作 路徑 以及id值是否正確
3
最後一步 CDM 進入到 測試工程目錄 在CMD 輸入 ant build 成功後會在 工程的bin 目錄下 出現jar包
bin 目錄下的jar 包就是我們寫好的指令碼了 你可以直接push到手機裡 也可以通過QQ的手機助手進行傳送
將jar包push到手機data/local/tmp目錄下,對應的命令是:
adb push <jar檔案路徑> data/local/tmp
必須要push到data/local/tmp
QQ傳送的朋友 可以下載個RE檔案管理 進行剪下 或者用手機自帶的
最後執行 jar包 adb shell uiautomator runtest <jar檔名> -c <工程中的類名(包含包名)>
例:
adb shell uiautomator runtest Checker.jar -c com.example.ui.Demo
顯示OK 就是成功了 就會神奇的看到設定被點開了 之後你想怎麼寫都行了 可以查詢相關API 其實Uiautomator本質就是 給開發人員用的測試 不論1.0 還是 2.0 如果你要寫指令碼可以用觸動精靈 挺好用的 兩天就能寫個功能完善的指令碼
相關推薦
Uiautomator-1.0入門
關於 自動化測試 其實並不是很難 主要環境配置起來 很麻煩 網上有不少部落格 但有些細節沒有說到 反倒API說了一大推 環境搭建起來了 其他就很簡單了 我們會用到 ANT 可以把 寫
ExtJs-5.1.0入門學習
早就聽說ext,只是簡單的認為是和Jquery類似的js框架,並沒有實際應用或者深入學習過,因工作需要進行深入學習。 從ExtJs發展到現在已經發布到5.1.0了,最新的入門資料ExtJs的版本比較老,下載的原始碼包目錄也不一樣,學習時真是費了不少功夫。 入門就感覺拿過原始
子雨大資料之Spark入門教程---Spark2.1.0入門:第一個Spark應用程式:WordCount 2.2
前面已經學習了Spark安裝,完成了實驗環境的搭建,並且學習了Spark執行架構和RDD設計原理,同時,我們還學習了Scala程式設計的基本語法,有了這些基礎知識作為鋪墊,現在我們可以沒有障礙地開始編寫一個簡單的Spark應用程式了——詞頻統計。 任務要求 任務:
SpringBoot 2.0入門(1)
1.在eclipse中建立一個Maven工程 建立名為”helloworld” 型別為Jar工程專案。 2.pom檔案引入依賴 在pom中加入如下程式碼: <parent> <groupId>org.springframework.boo
小象學院 零基礎Python入門 案例二 分形樹繪製1.0
import turtle def main(): count = 1 while count<=5: turtle.forward(200) turtle.right(144) count = count + 1 turtle.exitonclick() i
java實現計算器(最低版1.0,只能實現從左到右依次計算)——初學者入門
軟體:eclipse 才開始用java設計東西,我覺得這個程式適用於初步想設計計算器的同學用,雖然很簡單,但我會慢慢更新自己所寫計算器,實現更強的邏輯。 例如:61-7*4=216(從左至右的簡單邏輯,還不完善) 程式碼:(有詳細註釋) //大佬不適合看! package l
Apollo 1.0快速入門指南
關於本指南 在阿波羅1.0快速入門指南提供了所有的基本指令瞭解,安裝和建設阿波羅。 檔案約定 下表列出了本文件中使用的約定: 圖示 描述 膽大 重點 Mono-space font 程式碼,鍵入的資料 斜體 檔案,部分和標題的標
AOSP6.0.1 launcher3入門篇—hotseat相關實現
在安卓桌面程式的主介面我們可以看到是由QsbSearchBar(上方搜尋框)、Workspace(頁檢視空間)、pageIndicator(頁指示器)、hotseat(底部檢視空間)四個部分組成,它們是
由淺入深--探究Tomcat9.0---入門篇1
好幾個月沒寫部落格了,一是在籌備轉型事宜,二是一直在研究tomcat,現在總算有一些眉目了。現在將自己這幾個月的研究成果給各位看官奉上,希望大家喜歡。 本次原始碼分析預計分為五大專題 第一部分是Tomcat入門篇(元件介紹,啟動流程分析) 第二部分是手寫tomcat實現
演算法的樂趣c/c++ —— 1.2.0入門習題
宣告:摘選自“ 演算法競賽入門經典(第2版)”作者: 劉汝佳 / 陳鋒 ISBN:9787302291077 子序列 輸入
從零開始學習ASP.NET MVC 1.0 (一) 開天闢地入門篇
《從零開始學習ASP.NET MVC 1.0》 文章導航 一.摘要 隨著ASP.NET MVC 1.0版本的正式釋出, 我將本系列文章也更新到了1.0, 對於已經發表的文章我都會根據1.0版本重新編輯. 希望本系列文章能打給大家幫助. 二.前言 ASP.NET MVC是微軟官方提供的開源M
kafka2.1.0核心概念及入門教程
kafka kafka 核心概念 什麼是kafka Kafka是由Apache軟體基金會開發的一個開源流處理平臺,由Scala和Java編寫。該專案的目標是為處理實時資料提供一個統一、高吞吐、低延遲的平臺。其持久化層本質上是一個“按照分散式事務日誌架構的大規模釋出/訂閱訊息佇
【爬蟲入門】【非同步】爬取人人車車輛資訊1.0
# 爬取人人車車車輛資訊。 # 多執行緒/多程序:提高程式碼的執行效率,放在爬蟲中就是提高爬取效率。因為可以使用多個程序同時對多個頁面發起請求。 # 之前的糗事百科/51job同步執行:按照先後順序一個一個執行。 from urllib.request import urlopen from ur
【爬蟲入門】【同步】爬取人人車車輛資訊1.0
# 爬取人人車車車輛資訊。 from urllib.request import urlopen from urllib.error import HTTPError import re, sqlite3 class RRCSpider(object): """ 人人車爬蟲類
【爬蟲入門】【正則表示式】【非同步】爬取人人車車輛資訊1.0
# 爬取人人車車車輛資訊。 # 多執行緒/多程序:提高程式碼的執行效率,放在爬蟲中就是提高爬取效率。因為可以使用多個程序同時對多個頁面發起請求。 # 之前的糗事百科/51job同步執行:按照先後順序一個一個執行。 from urllib.request import urlopen from ur
【爬蟲入門】【正則表示式】【同步】爬取人人車車輛資訊1.0
# 爬取人人車車車輛資訊。 from urllib.request import urlopen from urllib.error import HTTPError import re, sqlite3 class RRCSpider(object): """ 人人車爬蟲類
【爬蟲入門】抓取糗事百科的段子1.0
爬取糗事百科資訊 注意:爬取任何一個網站,首先要確定的就是這個網站是靜態網站還是動態網站。其次看看這個GET請求是否攜帶了特殊的引數。最後需要留意請求頭中的Cookie資訊。 class QSBKSpider(object): """ 爬蟲類 """
【爬蟲入門】抓取白敬亭貼吧某個帖子下的圖片1.0
import urllib.request import re import os import urllib # 根據給定的網址來獲取網頁詳細資訊,得到的html就是網頁的原始碼 def getHtml(url): page = urllib.request.urlopen(ur
AOSP6.0.1 launcher3入門篇-解析DeviceProject.java及相關檔案
上一篇文章(AOSP6.0.1 launcher3入門篇—解析launcher.java檔案)描述了launcher3的載入過程,本篇文章記錄hotseat停靠方向和位置、隱藏頁指示器、Folder大小等。 首先介紹建構函式: 找到public DevicePr
Android Studio中ArcGIS Runtime Android SDK 100.1.0(100.2.0,100.3.0)開發原生地圖應用(入門環境配置)
前言 最近因為工作關係,需要使用ArcGIS Runtime SDK for Android搭建一個簡單的入門Demo,也就是傳說中的Hello GISer。翻了一遍官方文件,ArcGIS Runtime SDK for Android的安裝推薦使用Gradle,而