僅僅從功能測試的層面上來講的話,在流程和功能測試上是沒有區(qū)別的。那么區(qū)別在哪里呢?
我個人覺得就是由于載體不一樣,所以系統(tǒng)測試和一些細節(jié)可能會不一樣。
那么我們就要先來了解,web和app的區(qū)別。
web項目,一般都是b/s架構(gòu),基于瀏覽器的,而app則是c/s的,必須要有客戶端。那么在系統(tǒng)測試測試的時候就會產(chǎn)生區(qū)別了。
系統(tǒng)架構(gòu)
來看的話,web測試只要更新了服務(wù)器端,客戶端就會同步會更新。而且客戶端是可以保證每一個用戶的客戶端完全一致的。但是app端是不能夠保證完全一致的,除非用戶更新客戶端。如果是app下修改了服務(wù)端,意味著客戶端用戶所使用的核心版本都需要進行回歸測試一遍。
性能方面
web頁面可能只會關(guān)注響應(yīng)時間,而app則還需要關(guān)心流量、電量、CPU、GPU、Memory這些了。至于服務(wù)端的性能是沒區(qū)別,這里就不談。
兼容方面
web是基于瀏覽器的,所以更傾向于瀏覽器和電腦硬件,電腦系統(tǒng)的方向的兼容,不過一般還是以瀏覽器的為主。而瀏覽器的兼容則是一般是選擇不同的瀏覽器內(nèi)核進行測試(IE、chrome、Firefox)。app的測試則必須依賴phone或者是pad,不僅要看分辨率,屏幕尺寸,還要看設(shè)備系統(tǒng)。系統(tǒng)總的來說也就分為Android和iOS,不過國內(nèi)的Android的定制系統(tǒng)太多,也是比較容易出現(xiàn)問題的。一般app的兼容測試三種方法,云測試,請團隊測試,真機測試。云測試咱們稍后再聊,這里說說真機的選擇。首先要選擇主流的機型,其次要選擇不同的分辨率,尺寸,然后就是不同的操作系統(tǒng)。
相比較web測試,app更是多了一些專項測試:
健壯性測試:
一些異常場景的考慮以及弱網(wǎng)絡(luò)測試。這里的異常場景就是中斷,來電,短信,關(guān)機,重啟等。
而弱網(wǎng)測試是app測試中必須執(zhí)行的一項測試。包含弱網(wǎng)和網(wǎng)絡(luò)切換測試。需要測試弱網(wǎng)所造成的用戶體驗,重點要考慮回退和刷新是否會造成二次提交。需要測試丟包,延時的處理機制。避免用戶的流失。這些在前面的弱網(wǎng)測試那篇已經(jīng)講過,這里不再講了。
安裝、卸載、更新:
web測試是基于瀏覽器的所以不必考慮這些。而app是客戶端的,則必須測試安裝、更新、卸載。除了常規(guī)的安裝、更新、卸載還要考慮到異常場景。包括安裝時的中斷、弱網(wǎng)、安裝后刪除安裝文件,更新的強制更新與非強制更新、增量包更新、斷點續(xù)傳、弱網(wǎng),卸載后刪除app相關(guān)的文件等等。這里講起來的話太多了,如果有疑問的同學(xué)可以評論或者給我留言。
界面操作:
現(xiàn)在app產(chǎn)品的用戶都是使用的觸摸屏手機,所以測試的時候還要注意手勢,橫豎屏切換,多點觸控,事件觸發(fā)區(qū)域等測試。
剩下的可能就是使用的工具的不同吧。
就自動化來講,web大多用的selenium、webdriver,而app則是appium。
性能使用的工具web則是LR,app使用Jmeter要多一點。
這里只是講的一個大致的區(qū)別。有些東西我到現(xiàn)在也沒了解到。所以也只能寫成這樣了。
總的來說區(qū)別并沒有多大。測試的產(chǎn)品千變?nèi)f化,測試的思想是不變的。工具即使不同,只要理解原理做起來并沒有什么難度。