Fastmonkey實(shí)現(xiàn)iOS Monkey測(cè)試中自動(dòng)登錄

一诚隙、背景:

? ? ? ?由zhangzhao大神開發(fā)的Fatkmonkey已經(jīng)開源一段時(shí)間了,并且已經(jīng)看到了很多同學(xué)在TesterHome上反饋問題與總結(jié)使用經(jīng)驗(yàn),我們也在產(chǎn)品項(xiàng)目中開始使用了Fastmonkey并取得了一些效果驾中,F(xiàn)askmonkey本身也還在不斷優(yōu)化中玲躯,下面也總結(jié)我們使用中的一些小經(jīng)驗(yàn),比如:如何實(shí)現(xiàn)自動(dòng)登錄等减拭。

為什么要使用自動(dòng)登錄呢蔽豺?我們都知道在進(jìn)行App Monkey測(cè)試過程中因?yàn)楦鞣N原因如:隨機(jī)點(diǎn)擊了登出按鈕、登錄過期拧粪、App重啟了等造成用戶登出無法進(jìn)入應(yīng)用進(jìn)行測(cè)試修陡,這時(shí)自動(dòng)登錄功能就會(huì)起作用了,依此方法也可以進(jìn)行

二可霎、工具準(zhǔn)備:

1.Fastmonkey工程代碼:用于自動(dòng)登錄功能配置魄鸦,如何下載及配置Faskmonkey請(qǐng)參考我之前的文章《使用Fastmonkey進(jìn)行Monkey測(cè)試實(shí)踐》

2.Appium-desktop工具: appium ui自動(dòng)化的Mac桌面應(yīng)用程序,由于其內(nèi)建了App UI元素查看器(inspector)方便查看我們App的UI元素控件的屬性值癣朗,F(xiàn)askmonkey工程中將會(huì)用到拾因。

三、修改Fastmonkey工程

1.打開Fastmonkey工程代碼如下圖:

工程代碼主界面

2.修改【XCTestWDMonkey.swift】與【XCTestWDMonkeyController.swift】文件:

去掉monkey.addXCTestAppLogin(interval: 50, application: app)調(diào)用登錄模塊前面的注釋【//】,將登錄調(diào)用模塊開啟如下圖:

修改【XCTestWDMonkey.swift】


修改【XCTestWDMonkeyController.swift】

3.修改【MonkeyXCTest.swift】文件中的監(jiān)聽事件函數(shù)addXCTestAppLogin

?此函數(shù)主要用于監(jiān)聽Monkey運(yùn)行中出現(xiàn)的UI元屬绢记,比如【密碼】輸入的出現(xiàn)或者【登錄】按鈕的出現(xiàn)扁达,將tag值改為UI元屬的xpath值(獲取App的UI元素控件屬性步驟),當(dāng)監(jiān)控到【密碼】或者【登錄】出現(xiàn)后再調(diào)用相應(yīng)的處理模塊庭惜。

將tag值改為被監(jiān)聽元屬的xpath值

4.修改處理模塊MonkeyXCTestPrivate.swift文件

修改如【手機(jī)號(hào)】罩驻、【密碼】、【登錄】等或增減需要控制的UI元素的Xpath值护赊。注意:是一段代碼對(duì)應(yīng)一個(gè)UI元素的處理代碼惠遏,可以按照相應(yīng)規(guī)律增減相應(yīng)的代碼:

var element = try? XCTestWDFindElementUtils.filterElement

保存完成后即可,至此Fastmonkey就具有自動(dòng)登錄配置功能了骏啰。

修改手機(jī)號(hào)UI元素的Xpath值



修改密碼UI元素的Xpath值

四节吮、獲取App的UI元素控件Xpath值

使用Appium-desktop工具來獲取I元素控件屬性,關(guān)于appium-desktop的下載與安裝這里不再熬述了判耕,請(qǐng)百度一下相關(guān)文檔透绩,注意請(qǐng)使用最新版的Appium-desktop,防止因?yàn)榘姹静患嫒莩霈F(xiàn)異常壁熄。

1.啟動(dòng)Appium-desktop

Appium-desktop啟動(dòng)首頁(yè)

2.點(diǎn)擊【Start Server】按鈕啟動(dòng)Appium Server帚豪,再點(diǎn)擊【放大鏡】圖標(biāo)開啟Inspector配置窗口。

Appium Sever已經(jīng)啟動(dòng)草丧,【放大鏡】圖標(biāo)開啟Inspector

2.輸入Inspector配置信息:

? ? ? 根據(jù)自己App與手機(jī)版本進(jìn)行修改狸臣,主要修改deviceName,?platformVersion,?bundleId(應(yīng)用的BundleID)昌执、udid(iPhone ID)其他不用修改烛亦,如果想詳細(xì)了解這些字段的意義,可點(diǎn)擊配置窗口左下角的【Desired Capabilities Documentation】鏈接查看官方詳細(xì)文檔:

樣例配置信息如下:

{

? "automationName": "XCUITest",

? "platformName": "iOS",

? "platformVersion": "10.3.3",

? "deviceName": "iPhone 6",

? "bundleId": "com.xxx.xxx",

? "noReset": true,

? "udid": "7840df1f8fb29c8e347xxxxxxxxxxxxxxxxxxxxxx"

}

輸入Inspector配置信息

2.點(diǎn)擊【Start Session】按鈕懂拾,啟動(dòng)UI Inspector窗口

注意:如果是第一次啟動(dòng)有時(shí)不成功能煤禽,需要等待一會(huì)兒,如果還是報(bào)錯(cuò)岖赋,請(qǐng)重啟一下手機(jī)檬果,并確認(rèn)一下配置是正確的,并再試一次唐断。

UI 元素查看窗口已經(jīng)啟動(dòng)

在窗口左邊列出了手機(jī)的屏幕快照汁汗,點(diǎn)選相應(yīng)的元素如手機(jī)號(hào)輸入框,右邊會(huì)列出元素的xpath值栗涂,注意:如果此元素的xpath是為空字符串請(qǐng)選擇他父控件

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末知牌,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子斤程,更是在濱河造成了極大的恐慌角寸,老刑警劉巖菩混,帶你破解...
    沈念sama閱讀 206,839評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異扁藕,居然都是意外死亡沮峡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門亿柑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來邢疙,“玉大人,你說我怎么就攤上這事望薄∨庇危” “怎么了?”我有些...
    開封第一講書人閱讀 153,116評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵痕支,是天一觀的道長(zhǎng)颁虐。 經(jīng)常有香客問我,道長(zhǎng)卧须,這世上最難降的妖魔是什么另绩? 我笑而不...
    開封第一講書人閱讀 55,371評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮花嘶,結(jié)果婚禮上笋籽,老公的妹妹穿的比我還像新娘。我一直安慰自己椭员,他們只是感情好车海,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,384評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著拆撼,像睡著了一般容劳。 火紅的嫁衣襯著肌膚如雪喘沿。 梳的紋絲不亂的頭發(fā)上闸度,一...
    開封第一講書人閱讀 49,111評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音蚜印,去河邊找鬼莺禁。 笑死,一個(gè)胖子當(dāng)著我的面吹牛窄赋,可吹牛的內(nèi)容都是我干的哟冬。 我是一名探鬼主播,決...
    沈念sama閱讀 38,416評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼忆绰,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼浩峡!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起错敢,我...
    開封第一講書人閱讀 37,053評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤翰灾,失蹤者是張志新(化名)和其女友劉穎缕粹,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體纸淮,經(jīng)...
    沈念sama閱讀 43,558評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡平斩,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,007評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了咽块。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片绘面。...
    茶點(diǎn)故事閱讀 38,117評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖侈沪,靈堂內(nèi)的尸體忽然破棺而出揭璃,到底是詐尸還是另有隱情,我是刑警寧澤峭竣,帶...
    沈念sama閱讀 33,756評(píng)論 4 324
  • 正文 年R本政府宣布塘辅,位于F島的核電站,受9級(jí)特大地震影響皆撩,放射性物質(zhì)發(fā)生泄漏扣墩。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,324評(píng)論 3 307
  • 文/蒙蒙 一扛吞、第九天 我趴在偏房一處隱蔽的房頂上張望呻惕。 院中可真熱鬧,春花似錦滥比、人聲如沸亚脆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)濒持。三九已至,卻和暖如春寺滚,著一層夾襖步出監(jiān)牢的瞬間柑营,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評(píng)論 1 262
  • 我被黑心中介騙來泰國(guó)打工村视, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留官套,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,578評(píng)論 2 355
  • 正文 我出身青樓蚁孔,卻偏偏與公主長(zhǎng)得像奶赔,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子杠氢,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,877評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 用到的組件 1站刑、通過CocoaPods安裝 2、第三方類庫(kù)安裝 3鼻百、第三方服務(wù) 友盟社會(huì)化分享組件 友盟用戶反饋 ...
    SunnyLeong閱讀 14,602評(píng)論 1 180
  • 問診:病人于10多年前從高空摔落绞旅,扭傷左腰部质况,一直未有根除。目前膀胱經(jīng)玻靡,在13-14椎處结榄,左邊比右邊高出少許,觸診...
    向日葵的日常閱讀 593評(píng)論 0 0
  • 口罩用來記得嘆息囤捻,床單用來記得昏迷臼朗。So,筆跡用來記得溫度蝎土,鞋帶用來記得風(fēng)景视哑,手指用來記得遇見,懷念用來記得曾經(jīng)誊涯。...
    崔雅靜閱讀 284評(píng)論 0 0
  • 武松挡毅,水滸傳的重要人物之一,很多史學(xué)家都欣賞他暴构,贊揚(yáng)他跪呈,連金圣嘆這樣著名的人都對(duì)他萬分敬仰∪∮猓可我覺得耗绿,武松并不是那...
    摘繪森系閱讀 1,999評(píng)論 0 2
  • 朋友是什么误阻?是閑時(shí)淡淡的思念;是忙時(shí)淺淺的期盼晴埂;是深夜芊芊的依戀究反;是時(shí)而不時(shí)的惦記。也許她占的地方并不大儒洛,但恒定精耐;...
    千層底閱讀 160評(píng)論 0 0