iOS fastMonkey 測試
關鍵字:xcode9.2、FastMonkey、Carthage、XCTestWD
目錄:
一.背景介紹
二.FastMonkey介紹
三.搭建FastMonkey的前置條件
四.FastMonkey工程配置
五.進行Monkey測試
六.後記
一.背景介紹
近期老大讓調研iOSMonkey測試,看了好幾個第三方的框架,最後看到了集眾家所長的FastMonkey。因此作為一名iOS Monkey測試小白,在環境搭建和執行上遇到了很多問題,看了寫FastMonkey的zhangzhao大神寫的原貼和簡書上luckydaxian寫的掃盲貼,又QQ問zhangzhao大神,終於運行了起來,因此寫此篇文章進行記錄,希望能夠幫助其他小夥伴少進坑。
此外進行下說明,此篇文章和luckydaxian寫的《使用Fastmonkey進行Monkey測試實踐》有很多相似之處,許多也直接進行了引用,但是由於按照luckydaxian寫的仍然存在一些問題,我在luckydaxian寫的文章下進行了評論,但是為了有類似經歷的小夥伴看起來更方便,搭建環境過程更順利,所以就重新整理了一遍。在這裡向zhangzhao大神和luckydaxian致敬~
二.FastMonkey介紹
Fastmonkey是zhangzhao大神去年(2017年)開源的一款iOS應用Monkey測試工具,基於 XCTestWD、swiftmonkey 二次開發,實現無需插樁的 iOS monkey 自動化工具 fastmonkey,優點如下:
1.無需插樁!
2.高效率,每秒4-5個action!(真的很高效~)
3.輕量極簡!
詳細介紹請參考TesterHome連結 :
題外:我在本地run起來後,又從頭看了一遍此貼,包括zhangzhao大神的update和很多志同的小夥伴的評論和討論,收穫很大。
三.搭建FastMonkey的前置條件
1. Xcode9.2軟體:
用於匯入Faskmonkey工程及執行monkey測試.
注意:xcode自帶的swift是swift4,FastMonkey需要swift3.2,此點熟記於心。
2. iOS 第三方庫管理工具-Carthage:
Carthage是iOS用於下載工程所依賴第三方庫的;如果沒有安裝請使用下面命令進行安裝:
3. iOS開發者證書檔案:
iOS開發者證書用於工程中的構建及簽名,證書可以是團隊的開發者證書也可以是免費的個人開發者證書,如何申請個人開發者證書請大家參考其他文件此處不再敖述
4. Fastmonkey工程程式碼從github上下載:
四.FastMonkey工程配置
1.clone FastMonkey工程
進入terminal,執行 git clone https://github.com/zhangzhao4444/Fastmonkey.git
2.切換工程分支到xcode9.2
進入FastMonkey資料夾下,執行git checkout xcode9.2
切換到xcode9.2分支
3.修改工程依賴包Cartfile檔案
Cartfile檔案位置
Cartfile檔案內容
!!修改時,注意等號左右的空格!!
4.下載工程依賴包
在terminal中進入到Fastmonkey/XCTestWD-master路徑下,執行如下命令:
carthage update --no-use-binaries
如上圖,下載和編譯依賴沒有任何錯誤即可進行下一步
注意:如果下載和編譯過程出現錯誤,請check以下兩點:
i. Cartfile檔案中各依賴的版本號是否正確;
ii.檢視log日誌,具體定位錯誤原因。
5.安裝ideviceinstaller庫
ideviceinstaller一個與安裝代理進行互動的工具。允許安裝、升級、解除安裝、歸檔、恢復iOS裝置,並列舉安裝或歸檔的應用程式。
將工程clone到本地後,按照github上的readme進行安裝。
6.配置XCTestWD專案工程:
雙擊子目錄XCTestWD中的XCTestWD.xcodeproj檔案,在xcode中開啟專案工程
開啟專案工程
6.1修改BundleID和設定開發者賬號
修改BundleID和設定開發者賬號
6.2修改XCTestWDUITests對應的Signing
修改XCTestWDUITests對應的Signing
6.3刪掉XCTestWD/XCTestWD-Bridging-Header.h
刪掉XCTestWD/XCTestWD-Bridging-Header.h
6.4新增XCTestWDMonkey.swfit到Server目錄
右鍵點選server目錄,然選擇"Add Files to "XCTestWD"
新增XCTestWDMonkey.swift檔案
6.5新增XCTestWDApplication.h與XCTestWDApplication.m檔案到PrivateHeaders目錄
選中PrivateHeaders然後點選右鍵在彈出的介面中選擇【Add Files to "XCTestWD"...】專案
選擇XCTestWDApplication.h與XCTestWDApplication.m然後點選Add
新增後
6.6修改XCTestWD專案工程程式碼中的配置值
6.6.1修改為非server模式
serverMode 值設定為false
說明:server模式需要 iproxy 和curl,筆者用到的是非server模式,直接在xcode中執行test。
6.6.2修改XCTestWDMonkey.swift檔案中的bundleID為被測App的值
修改被測APP的Bundle ID
6.6.3修改Monkey.swift檔案中的elapsedTime值確定你需要執行多長時間的Monkey,注意單位是秒
修改Monkey執行時長,此處為15h
五.進行Monkey測試
1.選擇裝置(筆者用的是真機)
xcode9.2不支援≥11.3的系統
2.執行Monkey測試
選擇【Product】--【Test】執行Monkey測試
3.截圖路徑位置:
截圖路徑:/Users/olivia/Library/Developer/Xcode/DerivedData/XCTestWD-equyofhmagirhbgjwqrbrzrwbnrl/Logs/Test/Attachments
關於log,xcodetest介紹後,可以在控制檯看到輸出的log位置。
作者:慕幕醬 連結:https://www.jianshu.com/p/373c14d014f2 來源:簡書 簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。