Android APP自動化環(huán)境準備和坑

前言

最近,因為項目的物聯(lián)設(shè)備需要跟云端通信,需要接入手機APP。在這里記錄一些Android自動化過程的準備工作和踩坑。

一、環(huán)境安裝

方式一、公司自己的一鍵安裝

方式二、自己百度安裝

這個方法沒有從頭到尾去實踐,主要是電腦連接Android APP需要用到什么,就裝什么。目前想法是利用robotframework作為webDriver script,因此,python環(huán)境、ADB環(huán)境、JAVA環(huán)境、RF環(huán)境、Appium環(huán)境等等都得裝。簡單羅列過程:

  • 安裝JDK。在www.orcale.com下載 java SE,安裝。
  • 安裝Android SDK。在 developer.android.com下載 Get the Android SDK。
  • 安裝Python。
  • 安裝selenium。
  • 利用Python pip 安裝robotframework-selenium2library robotframework-ride. AppiumLibrary
  • 安裝 wxPython-4.0.7.post2-cp27-cp27m-win32.whl。
  • 安裝appium-desktop-setup.exe(默認包含node.js).
  • 安裝appium Client,在Appium-Python-Client下執(zhí)行 python setup.py install.
  • 安裝AppiumDesktop(比appium自帶的桌面端好用的開源桌面端).
    配置檢查:
  • 檢查SDK:java –version。
  • 檢查node:node -v
  • 檢測appium:appium-doctor
  • 檢查服務運行:appium.cmd
  • 確保環(huán)境變量都加好

二、運行

打開
用appium桌面端打開就行:

打開首頁

運行服務器:
運行

點擊右上角放大鏡:
放大鏡

我們只要把appium開啟來就行,通過RF腳本去操作手機端,操作過程日志都會顯示在第二張圖上。第三張圖是appium自帶的定位元素的功能。

三、元素定位

四、踩坑

  1. Appium運行報錯4.4W:
  • 刪除SDK文件夾下面android4.4W。
  1. Appium運行報錯255權(quán)限錯誤等:
  • 執(zhí)行腳本的activity需要先獲取一定的權(quán)限,可以考慮換一個activity開始,一般是打開APP的第一個頁面
  1. Appium運行提示服務被占據(jù):
  • 重啟appium服務
  • 關(guān)注手機是否跳出獲取unlock安裝的彈窗,是就點擊確定
  1. Click button點擊報錯(一般情況下xpath定位是可行的,但是有時候因為環(huán)境編碼不一致,無法利用xpath過濾器)錯誤代碼:TypeError: exceptions must be old-style classes or derived from BaseException, not unicode
  • 換成click element 選擇過濾器為id,參數(shù)為id= 或者 name=
  • Id對應的就是Nodedetail下的resource-id
  • Id表現(xiàn)形式有幾種:比如update_left_button或者id=com.hikvision.sentinels:id/update_left_button均能夠表示ID
  • Id和name對于node元素來說的唯一的標記,因此只需要選擇就能唯一定位,但是其他的屬性定位可能需要加上編號
  • Click button點擊按鈕,根據(jù)按鈕名稱或當前界面按鈕數(shù)量的序號點擊,不使用控件id 使用這個關(guān)鍵字意味著要點擊的對象是一個按鈕 在iOS中的類名為UIAButton 在Android中的類名為android.widget.Button
  1. Uiautomatorviewer運行”Error obtaining UI hierachy問題:
  • 使用程序被運行過了,重啟一下就好
  1. win10 下AndroidStudio無法連接真機:
  • 需要禁用驅(qū)動程序強制簽名
  • 右下角通知全部展開—所有設(shè)置—更新和安全—立即重啟—高級選項—點擊重啟—選擇7,等待重啟完成。
  • 在設(shè)備管理下—便攜設(shè)備,若正常顯示連接的設(shè)備,則表示驅(qū)動安裝好了
  1. Android Studio中no module,無法運行APP:

五、編碼

裝完環(huán)境、踩完坑,就可以利用RF的RIDE編寫代碼了,RF自帶的編輯器不怎么好用,可以配置eclipse使用。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容