1.UI測試
UI測試的目標(biāo)是確保用戶界面能夠?yàn)橛脩籼峁┫鄳?yīng)的訪問或?yàn)g覽功能善茎。確保用戶界面符合公司或行業(yè)的標(biāo)準(zhǔn)。包括用戶友好性蚣常、人性化市咽、易操作性測試。
測試的內(nèi)容包括菜單抵蚊、對話框施绎、窗口、文本贞绳、圖片谷醉、布局、色彩等冈闭。一切展現(xiàn)給用戶的內(nèi)容都應(yīng)當(dāng)符合視覺設(shè)計(jì)的標(biāo)準(zhǔn)俱尼。當(dāng)然在實(shí)際項(xiàng)目中,與視覺設(shè)計(jì)完全一致是很難做到的萎攒;一般情況下遇八,IOS的視覺效果比較好,Bug也比較少躺酒,但Andriod的問題就很多押蚤。安卓系統(tǒng)的碎片化也是適配測試的大敵。
需要特別注意的點(diǎn):
UI測試標(biāo)準(zhǔn)要明確羹应。視覺和交互式用戶可以直接感知的,關(guān)乎用戶體驗(yàn)次屠。因此在討論測試方案的時(shí)候园匹,一定要明確UI的測試標(biāo)準(zhǔn)。比如頁面間跳轉(zhuǎn)和回退是否刷新劫灶、可操作區(qū)域精確范圍裸违、頁面分頁和數(shù)據(jù)分組、頁面渲染時(shí)間本昏、錯(cuò)誤提示供汛、公共出錯(cuò)頁面處理等。
功能細(xì)節(jié)要有列表。頁面提供的功能點(diǎn)是測試進(jìn)行功能測試和性能測試的基礎(chǔ)怔昨,要非常明確當(dāng)前APP或者H5頁面提供的操作和功能雀久,如果功能點(diǎn)有變動(dòng),一定要及時(shí)知會(huì)趁舀,避免重復(fù)測試赖捌,因?yàn)楣δ芨膭?dòng)后,所有的測試用例都要重新設(shè)計(jì)矮烹。
用戶體驗(yàn)要特別注重越庇。UI和交互設(shè)計(jì)可能沒完全覆蓋APP的行為,此時(shí)就要站在用戶的角度體驗(yàn)和使用奉狈,盡可能的提出優(yōu)化體驗(yàn)的建議卤唉,并將好的建議落地實(shí)施。
總之仁期,一切都要盡可能的明確桑驱,這樣在測試過程中才能區(qū)分什么是原生缺陷、什么是功能缺失蟀拷、什么是體驗(yàn)問題碰纬,才能針對性的推進(jìn)項(xiàng)目進(jìn)度。
2.功能測試
在進(jìn)行功能測試以前要熟悉產(chǎn)品的需求文檔问芬,積極的和PD溝通交流悦析。了解APP的使用流程。只有在熟練使用的前提下此衅,才能更好的發(fā)現(xiàn)問題和總結(jié)問題强戴。獲取資料的方式和途徑有很多,但是最重要的挡鞍,也是最有效的辦法就是:提問骑歹。
一般情況下,手機(jī)APP的功能比較復(fù)雜墨微,以某app為例道媚,不涉及交易的功能有室內(nèi)導(dǎo)航、停車找車翘县、排隊(duì)領(lǐng)號最域、消息推送、帖子發(fā)布锈麸、AR等镀脂;涉及交易的有停車?yán)U費(fèi)、優(yōu)惠券忘伞、搖一搖薄翅、掃描二維碼沙兰。APP頁面也分為兩類:本地頁面和H5頁面。頁面之間的跳轉(zhuǎn)邏輯翘魄、不同功能的流程都比較復(fù)雜鼎天,此時(shí)沒有一個(gè)很好的測試分類和測試計(jì)劃,是很難保證APP的質(zhì)量的熟丸。
解決的辦法就是训措,首先抽象和提煉每個(gè)頁面的功能和邏輯,總結(jié)不同頁面之間公共的需要測試的點(diǎn)光羞,比如數(shù)據(jù)加載绩鸣、UI對比,頁面跳轉(zhuǎn)等纱兑。在測試過程中呀闻,優(yōu)先測試公共的測試點(diǎn),再關(guān)注每一個(gè)頁面特有的測試點(diǎn)潜慎,這樣可以避免測試過程中捡多,因?yàn)闇y試點(diǎn)過多,導(dǎo)致的測試順序混亂铐炫、測試效率低下垒手、漏測等情況。
然后對特定的頁面和功能倒信,從時(shí)間科贬、地點(diǎn)、對象鳖悠、行為和背景五個(gè)不同的方面去考慮測試和分析的方法榜掌。也就是說要明白用戶會(huì)在什么時(shí)間、什么地點(diǎn)乘综、在什么背景或場景下憎账,使用APP中的某些功能。最好將用戶的行為和使用場景進(jìn)行提煉卡辰,對比的整理出功能性和非功能性的測試點(diǎn)胞皱,明確每一個(gè)測試點(diǎn)的測試標(biāo)準(zhǔn)。
明確測試標(biāo)準(zhǔn)是非常必要的九妈,比如剛才說到的UI測試朴恳,測試和驗(yàn)證的標(biāo)準(zhǔn)就是視覺稿,功能測試的最低標(biāo)準(zhǔn)是允蚣,在容錯(cuò)和有恰當(dāng)提示的情況下,可以引導(dǎo)用戶完成APP特定功能的使用呆贿。
在確定測試點(diǎn)及其標(biāo)準(zhǔn)后嚷兔,根據(jù)被測功能點(diǎn)的特性列舉出相應(yīng)類型的測試用例對其進(jìn)行覆蓋森渐,比如涉及輸入的地方需要考慮等價(jià)、邊界冒晰、負(fù)面同衣、異常或非法等情況壶运。
(1)等價(jià)類劃分方法? 如:整數(shù) 浮點(diǎn)數(shù) 正數(shù) 負(fù)數(shù) 等
(2)邊界值分析方法? 如:最大值耐齐、最小值
(3)錯(cuò)誤推測方法? ? 如:輸入、輸出為NULL蒋情,電話號碼包含字母
(4)因果圖方法
(5)判定表驅(qū)動(dòng)分析方法
(6)正交實(shí)驗(yàn)設(shè)計(jì)方法
(7)功能圖分析方法
3埠况、接口測試
APP的數(shù)據(jù)是從接口獲取的,因此需要了解APP使用的數(shù)據(jù)接口棵癣、接口數(shù)據(jù)返回的內(nèi)容和格式辕翰。在前端出現(xiàn)問題后,首先需要明確是前端處理的有問題狈谊,還是后端提供了有錯(cuò)誤的數(shù)據(jù)喜命,這樣可以將Bug提交給對的人,減少Bug轉(zhuǎn)移河劝、前后端溝通等帶來的時(shí)間成本壁榕。
接口測試一般通過抓包,或者M(jìn)ock進(jìn)行數(shù)據(jù)校驗(yàn)和測試赎瞎。
4牌里、性能測試
評估App的時(shí)間和空間特性
1)極限測試:在各種邊界壓力情況下(如電池、存儲(chǔ)煎娇、網(wǎng)速等)二庵,驗(yàn)證App是否能正確響應(yīng)。
2)響應(yīng)能力測試:測試App中的各類操作是否滿足用戶響應(yīng)時(shí)間要求
3)壓力測試:反復(fù)/長期操作下缓呛,系統(tǒng)資源是否占用異常催享;
4)性能評估:評估典型用戶應(yīng)用場景下,系統(tǒng)資源的使用情況哟绊。
5因妙、網(wǎng)絡(luò)測試
1)4G網(wǎng)絡(luò)、2G網(wǎng)絡(luò)票髓、WIFI網(wǎng)絡(luò)攀涵、弱網(wǎng)
2)不同網(wǎng)絡(luò)之間的切換:4G/WIFI。
6洽沟、適配測試
如果是對獨(dú)立的手機(jī)APP以故,適配測試需要根據(jù)當(dāng)前主流的手機(jī)型號、操作系統(tǒng)裆操、版本等制定規(guī)范的適配列表怒详。如果是將一個(gè)功能(比如H5頁面)集成到現(xiàn)有的APP中炉媒,則需要在保證功能測試和性能測試通過的前提下,提交APP團(tuán)隊(duì)進(jìn)行適配測試和驗(yàn)收昆烁。
適配測試產(chǎn)生的BUG很難進(jìn)行修復(fù)吊骤,主要是兩個(gè)方面的原因:品牌和版本。由于安卓完全開源静尼,所以很多廠商都可以生產(chǎn)安卓設(shè)備白粉,這些設(shè)備之間的差異,增加了軟件開發(fā)時(shí)進(jìn)行設(shè)備兼容的難度鼠渺。其次鸭巴,安卓的版本更新很快,但是大多數(shù)用戶不會(huì)把設(shè)備更新到最新或者較新的版本系冗,這就意味著開發(fā)者會(huì)非常困擾奕扣,到底讓程序去兼容較低版本,還是使用最新的版本的特性掌敬?所以很多情況下惯豆,在低版本的安卓設(shè)備上,APP頁面的顯示很雜亂奔害,而且BUG難以重現(xiàn)楷兽。