iOS自動化環境搭建——macaca


macaca-java for ios 自動化環境搭建

基礎原理解析:https://testerhome.com/topics/6608

一、環境搭建

1、安裝eclipse; -----Java開發調試工具 下載地址:https://www.eclipse.org/downloads/ PS:java調試工具,可根據自身情況選擇不下載。

2、安裝node.js 中文網地址:http://nodejs.cn/ node.js安裝方式一: (1)安裝brew

/usr/bin/ruby -e "$(curl -fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install)" (2)安裝node

brew install node (3)驗證node安裝

驗證node安裝:node -v

驗證npm安裝:npm -v node.js安裝方式二: (1)安裝node

訪問node.js官網(https://nodejs.org/en/download/),下載安裝包,一鍵安裝; (2)驗證node安裝

node -v npm -v 3、安裝xcode

進入https://developer.apple.com/download/more/網站找到要下載版本的xcode(xcode安裝需要8.3或更高的版本),下載安裝。

PS:可以在appstore上下載xcode,但只支持最新版本。 4、安裝usbmuxd ----通過 USB 通道測試 iOS 真機

brew install usbmuxd
5、安裝ios-webkit-debug-proxy ----被測試應用中包含webview時安裝

brew install ios-webkit-debug-proxy 6、安裝ios-deploy 裝包工具

npm i ios-deploy -g 7、安裝carthage

brew install carthage
PS:Macaca XCTestWD 的代碼管理使用carthage

8、安裝macaca
npm i -g macaca-cli ----macaca命令集

npm i -g macaca-ios ----macaca-ios自動化驅動

macaca doctor ----檢查macaca環境 8、安裝inspector

npm i app-inspector -g

PS:卸載命令:npm uninstall app-inspector -g 9、安裝maven

brew install maven 10、下載iOS自動化框架代碼

下載SVN上的iOS自動化框架代碼,路徑:https://******/product/qa-platform/automation/iOSMacaca/ios_a utomation/;

進入工程目錄;

安裝工程依賴庫:mvn -s settings.xml clean install -DskipTests

如果下載依賴過程中報錯,可能是由於mvn -s命令沒有生效導致的,建議將根目錄下settings.xml中的依賴配置到本地Maven目錄下的settings.xml中

本地目錄:/usr/local/Cellar/maven/3.3.9/libexec/conf

PS:eclipse與maven的關聯配置這里不做介紹,如果后續有需求會補充到此文檔。 11、xctestwd配置

macaca的webdriver存在兩個,一個為app-inspector調試需要,一個為iOS自動化需要,路徑分別為: /usr/local/lib/node_modules/app-inspector/node_modules/xctestwd/XCTestWD/XCTestWD.xcodeproj

----app-inspector啟動需要配置

/usr/local/lib/node_modules/macaca-ios/node_modules/xctestwd/XCTestWD/XCTestWD.xcodeproj ----ios自 動化需要配置

macaca的兩個webdriver配置相同,下面會主要以macaca-ios為例來介紹配置: (1)安裝證書,證書下載地址:https://*******/iQIYITest/product/qa-platform/automation/iOSMacaca/identifier/

ios_automation.p12 (證書密碼:123456); (2)下載profile,profile下載地址:https://*******/product/qa-platform

/automation/iOSMacaca/identifier/ios_automation.mobileprovision; (3)使用xcode打開/usr/local/lib/node_modules/macaca-ios/node_modules/xctestwd/XCTestWD/XCTestWD.xcodeproj工程文件; (4)配置XCTestWD,選擇XCTestWD target,配置Gerneral中的sign以及Build Settings中的signing,具體見下圖:

 

(5)配置

XCTestWDUITests,選擇XCTestWDUITeststarget,配置Gerneral中的sign以及Build Settings中的signing,具體見下圖:

 

(6)使用xcode打開/usr/local/lib/node_modules/app-inspector/node_modules/xctestwd/XCTestWD/XCTestWD.xcodeproj工程文件,分別按 照(4)(5)進行配置。

PS:如果設備不可用,無法將xctestwd安裝到設備上請自行更新profile文件。

二、模擬器運行

1、啟動macaca server macaca server --verbose

2、執行用例
新建窗口進入macaca Java的demo工程根目錄命令行執行:mvn test

三、inspector使用

1、啟動macaca server macaca server --verbose

2、獲取device 的udid 設備的udid獲取方式如下:

(1)模擬器獲取設備udid:xcrun simctl list ; (2)查看模擬器&連接設備udid:instruments-s ; (3)連接設備udid:xcode查看Hardware ->devices -> manage devices 。

3、運行webdriver
打開xcode,選擇WebDriverAgentRunner target,將webdriver運行到連接的設備上。

4、launch
app-inspector -u YOUR-DEVICE-ID --verbose

5、使用inspector元素查找工具 瀏覽器打開:http://current_ip:5678或http://localhost:5678

四、真機運行

1、連接設備

MAC連接能運行測試包的設備

2、啟動macaca server

macaca server --verbose

3、修改java代碼中的運行配置

目前的運行配置以macaca提供的demo為例。

(1)修改工程文件中的bootstrap/src/test/java/com/javademo/utils/Config.java文件以便於可以真機運行,以下為Config.java文件中的 代碼片段:

// ios平台相關信息

publicstaticfinalString IOS_PLATFORM_NAME ="iOS";

publicstaticfinalString IOS_DEVICE_NAME ="Ranli1"; //連接設備的name

publicstaticfinalString IOS_APP = RootPath + File.separator +"app/iQiYiPhoneVideo.app_2017-01-15_18-52.zip";

包的路徑,請放置開發包
publicstaticfinalString IOS_UDID ="40911ef567d57fcff5813d774fdeb108eaefde1b"; //連接設備的udid publicstaticfinalString IOS_BUNDLE_ID ="************"; //測試安裝包的bundle id

(2)修改工程文件中的bootstrap/src/test/java/com/javademo/cases/BaseTest.java 文件以便於Config.java文件中配置的設備信息何以傳遞到server,以下為BaseTest.java的代碼片段:


4、執行用例
新建窗口進入macaca Java的demo工程根目錄命令行執行,命令如下:

全部case運行:mvn test 單條case運行:mvntest-Dtest=packagename.classname(mvntest-Dtest=*****.cases.baseline.offline.function.Test_21674

1) 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM