前言:
最近針對新開發(fā)的一款app進(jìn)行了埋點(diǎn)測試垮衷。在這個過程中想總結(jié)自己對于埋點(diǎn)測試的學(xué)習(xí)與理解杰赛。
正文:
一惑朦、概念
埋點(diǎn)測試只是數(shù)據(jù)采集的一種術(shù)語兽泄,而數(shù)據(jù)采集是提供給運(yùn)營工作人員去了解手機(jī)app對于某些模塊、場景的用戶使用情況漾月,進(jìn)行的一個觸發(fā)埋點(diǎn)病梢,將埋點(diǎn)采集到的數(shù)據(jù)到的數(shù)據(jù)進(jìn)行上報(bào)的過程。采集數(shù)據(jù)只是起點(diǎn)梁肿,將數(shù)據(jù)進(jìn)行分析蜓陌、整理、匯總以及報(bào)表展示吩蔑,最終得出用戶對app普遍對使用行為钮热,從而實(shí)現(xiàn)app面向用戶的改良才是目的,為了產(chǎn)品更好符合用戶需求體驗(yàn)才是終點(diǎn)烛芬。
以下就埋點(diǎn)測試的流程隧期、技巧飒责、方法這幾個方面說起
二、測試流程
每一個app的完成仆潮,都少不了各方人員的共同努力宏蛉,各司其職。如:產(chǎn)品經(jīng)理符合提供需求以及確認(rèn)app最后展示效果性置,研發(fā)人員負(fù)責(zé)編碼開發(fā)app拾并,測試人員負(fù)責(zé)測試app是否滿足需求。為了更好的解釋鹏浅,我畫了一個流程圖:
三嗅义、測試技巧
1.了解開發(fā)針對不同模塊分別用什么語言編寫。若使用RN語言篡石,則只需要測試一端即可。
現(xiàn)在普遍app開發(fā)是使用原生編程語言(如:ios端使用objective-C西采,Android端使用Java)+RN凰萨。而RN是開源的跨平臺移動應(yīng)用開發(fā)框架,完整封裝了各種js內(nèi)置的方法械馆,則rn編碼時是調(diào)用js處理邏輯層處理事件胖眷,而js會被轉(zhuǎn)譯成object-c和java。其實(shí)簡單來說霹崎,我們在最上層編碼開發(fā)app就能在Android和ios端使用珊搀。因?yàn)橥惶状a,針對埋點(diǎn)測試只需要測試一端即可尾菇,這樣就提高效率境析。不過因?yàn)镽N組件不全,某些特殊功能就無法解決派诬,則還是需要各自的原生語言去編碼劳淆。關(guān)于rn使用的一個大致圖提供參考:
針對RN語言的普及度,我特意去請教研發(fā)人員默赂。研發(fā)人員說沛鸵,現(xiàn)在普遍業(yè)務(wù)模塊都是使用RN編碼,減少代碼冗余缆八。除非某些特殊功能曲掰,比如:驗(yàn)證碼、H5頁面奈辰。
2.發(fā)現(xiàn)埋點(diǎn)缺失時栏妖,全方面去定位分析。
比如奖恰,我們測試ios端的工具使用的xcode不是非常成熟底哥。所以若是某一端有埋點(diǎn)咙鞍,另外一段沒有埋點(diǎn),問題可能來自:a.手機(jī)版本不兼容趾徽;b. xcode版本不兼容续滋;c.中文日志有問題。
3.若是埋點(diǎn)真沒有孵奶,可以自主拉取代碼去跑動代碼檢查埋點(diǎn)疲酌。
發(fā)現(xiàn)問題后,盡可能去確認(rèn)是否是bug了袁,避免是因?yàn)閭€人失誤朗恳,導(dǎo)致自己處于被動狀態(tài),同時也不易于項(xiàng)目的進(jìn)展载绿。
四粥诫、測試方法
其實(shí)我們有一個數(shù)據(jù)采集系統(tǒng)能統(tǒng)計(jì)埋點(diǎn)數(shù)據(jù),數(shù)據(jù)經(jīng)過分析匯總的崭庸,展示非常直觀怀浆。但是,平臺并不能區(qū)分是Android端或者ios端的觸發(fā)怕享,并且數(shù)據(jù)往往不是時時更新的执赡,所以對于測試工作來說,無法保證埋點(diǎn)是否完成函筋,數(shù)據(jù)不具有考核性沙合。所以目前大部分公司是通過手機(jī)端連接電腦,通過查看日志方式去定位埋點(diǎn)情況跌帐。下面我們就Android端和ios端的測試方式講述下:
Android端
1.環(huán)境搭建:搭建ddms環(huán)境首懈,可以使用android studio,或者直接使用android sdk里帶monitor谨敛。
2.測試步驟:
1)在Android手機(jī)端安裝帶有埋點(diǎn)的安裝包
2)在電腦端打開Android studio猜拾,同時通過usb連接手機(jī)
3)查看埋點(diǎn)字段表,執(zhí)行對應(yīng)有埋點(diǎn)的操作佣盒,比如:若app登錄處埋點(diǎn)挎袜。則若在app上點(diǎn)擊登錄button,正常情況下能通過查找日志找到對應(yīng)的埋點(diǎn)肥惭。
4)檢查埋點(diǎn)是否正確盯仪,出錯的情況有:
a)漏埋點(diǎn)。比如蜜葱,若執(zhí)行a步驟找到埋點(diǎn)a全景;執(zhí)行b步驟,卻找不到埋點(diǎn)b牵囤。大概率是埋點(diǎn)b沒有被埋爸黄。
b)多埋點(diǎn)滞伟。比如,若只是操作一次炕贵,卻找到多個埋點(diǎn)梆奈。
c)埋點(diǎn)和操作類型不對應(yīng),比如称开,點(diǎn)擊的是“確認(rèn)”亩钟,卻上報(bào)了“返回”
ios端
1.環(huán)境搭建:安裝xcode
2.測試步驟:
1)在Android手機(jī)端安裝帶有埋點(diǎn)的安裝包
2)在電腦端打開xcode,同時通過usb連接手機(jī)
3)點(diǎn)擊xcode的window —>devices
4)查看埋點(diǎn)字段表鳖轰,執(zhí)行對應(yīng)有埋點(diǎn)的操作清酥,檢查埋點(diǎn)的準(zhǔn)確性。
總結(jié):
盡管埋點(diǎn)測試在整個測試流程中操作相對簡單蕴侣,耗時較少焰轻,但是仍然是軟件測試中不可或缺的一部分,保證埋點(diǎn)正常運(yùn)作昆雀。通過埋點(diǎn)匯總后反饋的報(bào)表辱志,可以科學(xué)有效的規(guī)劃出一款A(yù)PP的未來走向,更滿足用戶體驗(yàn)需求忆肾。