Web、app、H5、小程序測試的區(qū)別

單純從功能測試的層面上來講的話,APP 測試、web?測試和H5測試在流程和功能測試上是沒有區(qū)別的。

?????? Web項目或pc項目都是在電腦上進(jìn)行測試的。常見的PC項目架構(gòu)有BS架構(gòu)和CS架構(gòu)的,BS架構(gòu)就是通過瀏覽器(browser)請求后臺服務(wù)(server),后臺返回到響應(yīng)內(nèi)容顯示在瀏覽器上,常見BS架構(gòu)的項目有天貓、京東等瀏覽器輸入地址就可以訪問。CS架構(gòu)的項目比如QQ、微信等,需要在電腦下載客戶端(client),客戶端與后臺服務(wù)器(server)進(jìn)行數(shù)據(jù)傳輸交互?;谝陨闲畔ⅲ琍C端測試都是在電腦上,要么是在瀏覽器上測試要么安裝對應(yīng)客戶端。而app測試平臺分為安卓和IOS端:安卓測試需要在安卓手機(jī)上安裝開發(fā)提供的apk測試包;IOS測試需要將手機(jī)UUID提供給開發(fā)安裝ipa測試包進(jìn)行測試。H5測試就是測試移動端web/wap頁面,在PC或者手機(jī)瀏覽器都可以直接訪問H5頁面。

它們的不同點有

系統(tǒng)架構(gòu)不一樣,PC和H5端項目尤其是WEB項目對應(yīng)一個后臺服務(wù),所有客戶訪問的都是同一個后臺。web測試只要更新了服務(wù)器端,客戶端就會同步會更新。上線測試時,直接訪問線上地址測試即可。APP測試雖然對應(yīng)了一個后臺,但是不同的用戶可能下載了不同版本的客戶端,上線測試時,需要兼容每個版本的測試。app 修改了服務(wù)端,則客戶端用戶所有核心版本都需要進(jìn)行回歸測試一遍。

發(fā)布流程不同,PC端每次更新發(fā)布,需要將測試通過的包替換線上包,重啟服務(wù)后立刻生效,訪問的就是最新的環(huán)境;H5由于是一些html5網(wǎng)站發(fā)布上線后無需重啟即可訪問;APP端需要向應(yīng)用市場發(fā)布,安卓發(fā)布的市場有很多,應(yīng)用寶、豌豆莢、應(yīng)用商店等,每個應(yīng)用都需要單獨審核;IOS端應(yīng)用比較單一就是appstore,從提交、審核到發(fā)布會有幾天的時間間隔,開發(fā)的應(yīng)用包不會立刻發(fā)布。

專項測試,app端需要一些專項測試。

兼容性方面,因為測試平臺的不同,著重點不一樣。

下面具體展開來說。

App測試

?????? APP的測試類型有

? 安裝卸載測試:確認(rèn)系統(tǒng)能正常安裝應(yīng)用及使用,不需要時卸載及數(shù)據(jù)清除,

? 安全測試:防范隱私泄露、密碼加密及傳輸安全、權(quán)限的合理開放、數(shù)據(jù)庫安全、通信安全以及安裝包反編譯;

? 接口測試:前后端數(shù)據(jù)一致校驗、接口異常狀態(tài)及前端展示、數(shù)據(jù)的加密傳輸、業(yè)務(wù)功能覆蓋;

? 交互與異常測試:同級/上下級頁面的頁面交互及數(shù)據(jù)加載、網(wǎng)絡(luò)異常、數(shù)據(jù)異常前后端展示及狀態(tài);

? 性能測試、耗電量&流量測試:內(nèi)存、CPU、流量消耗、耗電量、冷熱啟動速度、圖片資源大??;

? 界面易用性測試:符合用戶習(xí)慣;

? UI測試:頁面顏色搭配、控件擺放位置及兼容性;

? 功能測試:需求文檔已有及隱含的需求功能可正常使用;

? 兼容性測試:網(wǎng)絡(luò)、機(jī)型、系統(tǒng)、分辨率、硬件、同類軟件、新舊數(shù)據(jù);

此外還有,Web和移動端的同步情況,用戶在Web端的操作,在移動端是否可以正常的進(jìn)行同步、顯示;在移動端的操作,用戶登錄web賬號,信息是否同步等。

與web測試的異同

?????? 界面測試方面,移動端測試需注意手勢,橫豎屏切換,多點觸控,事件觸發(fā)區(qū)域等。

兼容性測試方面,web是基于瀏覽器的,所以更傾向于瀏覽器和電腦硬件,電腦系統(tǒng)的方向的兼容,不過一般還是以瀏覽器的為主。而瀏覽器的兼容則是一般是選擇不同的瀏覽器內(nèi)核進(jìn)行測試(IE、chrome、Firefox)。app的測試則必須依賴phone或者是pad,不僅要看分辨率,屏幕尺寸,還要看設(shè)備系統(tǒng)-系統(tǒng)總的來說也就分為Android和iOS。web端的測試一般都是主要使用一種瀏覽器,待系統(tǒng)基本穩(wěn)定的時候,再去專門測試瀏覽器的兼容性。移動端主要分為安卓和IOS,而這兩端出現(xiàn)的問題一般是不一致的,一致的問題主要是數(shù)據(jù)問題,這時候是需要后臺處理的,所以我們測試的時候需要兩端都重點測試,而不會出現(xiàn)先著重測試某一端的問題。

性能方面,web項目需監(jiān)測響應(yīng)時間、CPU、Memory,app項目除了監(jiān)測響應(yīng)時間、CPU、Memory外,還需監(jiān)測流量、電量等。

安全測試方面,安裝包是否可反編譯代碼、安裝包是否簽名、權(quán)限設(shè)置,例如訪問通訊錄、相冊、照相機(jī)等等,登錄后長時間無操作情況

專項測試方面,相對于 Wed 項目,APP有如下專項測試項

1. 干擾測試:中斷,來電,短信,關(guān)機(jī),重啟等

2. 弱網(wǎng)絡(luò)測試(模擬2g、3g、4g,wifi網(wǎng)絡(luò)狀態(tài)以及丟包情況);網(wǎng)絡(luò)切換測試(網(wǎng)絡(luò)斷開后重連、3g切換到4g/5g/wifi 等)

3. 安裝、更新、卸載。安裝需考慮安裝時的中斷、弱網(wǎng)、安裝后刪除安裝文件等情況;卸載需考慮 卸載后是否刪除app相關(guān)的文件;更新,分強(qiáng)制更新、非強(qiáng)制更新、增量包更新、斷點續(xù)傳、弱網(wǎng)狀態(tài)下更新

4、接口測試

5、邊界測試:可用存儲空間少、沒有SD卡/雙SD卡、飛行模式、系統(tǒng)時間有誤、第三方依賴(QQ、微信登錄)等

6、不同app版本的業(yè)務(wù)功能測試

測試工具方面,自動化測試工具:APP 一般使用 Appium;Web 一般使用?Selenium,性能測試工具:APP 一般使用 JMeter; Web 一般使用loadrunner、JMeter。

H5測試

我們很容易將H5與HTML5混淆,H5是一個產(chǎn)品名詞,作為一種解決方案,而HTML5則是一個技術(shù)名詞,是下一代文本標(biāo)記語言標(biāo)準(zhǔn)。

H5頁面,入口的位置可以在瀏覽器打開或是APP的某個入口,可以理解成是適用于移動設(shè)備上展示網(wǎng)頁的一種新形式。APP中主要是通過Webview控件來加載URL來展示H5的。這種方式打開的H5頁面一般沒有刷新按鈕,頁面頂端也看不到URL。

H5的測試點

在接入客戶端測試之前,我們可以先使用chrome自帶的開發(fā)者工具(視圖-開發(fā)者-開發(fā)者工具)來進(jìn)行測試,效果是一樣的,將H5鏈接放到瀏覽器中,打開開發(fā)者工具,我們就能看到所有接口和頁面的顯示。這個工具還可以用來做兼容性的測試,在頁面左上角可調(diào)出,可以選擇手機(jī)、分辨率等,內(nèi)置的設(shè)備還有很多可以編輯,這一點上降低了我們手工去測試兼容性關(guān)于機(jī)型的測試。

H5頁面的測試點一般有

基本業(yè)務(wù)功能測試,包括登錄、刷新、回退、前進(jìn)、翻頁和業(yè)務(wù)邏輯。其中,登錄方面,客戶端已登錄,那么進(jìn)入H5后仍是登錄狀態(tài);若客戶端未登錄,進(jìn)入H5,點擊對應(yīng)鏈接,如果需要登錄則需要拉起native登錄。下拉刷新是否仍然處于當(dāng)前頁面?;用戶主動點擊刷新按鈕是否仍然處于當(dāng)前頁面?;點擊返回與back鍵,回退頁面是否是期望頁面?;翻頁加載情況;進(jìn)入后臺后,重新調(diào)出

性能方面,和操作體驗相關(guān)的測試,包括流量、頁面加載時間、弱網(wǎng)絡(luò)環(huán)境和服務(wù)端的壓測。流量測試方面,對于某些資源是否要做緩存或壓縮;弱網(wǎng)絡(luò)下,數(shù)據(jù)加載較慢,是否有對應(yīng)的loading提示;刷新頁面或者加載新內(nèi)容時頁面是否有抖動

安全方面,包括惡意攻擊、權(quán)限認(rèn)證、脫敏處理和直接url打開等

接口測試方面,包括功能、安全、性能

兼容性方面,包括瀏覽器兼容、系統(tǒng)版本兼容、分辨率兼容等方面

Hybrid app測試

【部分內(nèi)容來自《給產(chǎn)品經(jīng)理講技術(shù)》】

現(xiàn)在,移動端上的很多應(yīng)用都采用了Hybrid? APP的架構(gòu)。所謂HybridAPP,就是指使用原生和H5兩種UI呈現(xiàn)內(nèi)容。如何確認(rèn)一個頁面哪些部分采用了原生UI,哪些部分采用了H5?

在Android系統(tǒng)的“開發(fā)者選項”界面里,有一個名為“顯示布局邊界”的功能,通過使用這個功能,讀者可以很快地分辨出哪些是原生UI,哪些是 H5。

當(dāng)“顯示布局邊界”的功能開啟后,所有的原生控件都會被一個框框住。而其中的H5頁面會被WebView 這個原生控件框住。它與其他原生控件的區(qū)別是WebView展示的內(nèi)容比單一的原生控件復(fù)雜得多。例如,原生的TextView用來顯示文本內(nèi)容、ImageView 用來顯示圖片等;而WebView? 可以顯示一個網(wǎng)頁的內(nèi)容,我們可以把它看作精簡版的瀏覽器。

原生頁面為了展示豐富的內(nèi)容,一般需要利用大量控件進(jìn)行組合,所以當(dāng)讀者看到某個頁面布滿了框時,就可以判斷出這部分肯定是基于原生UI呈現(xiàn)的,如果一個頁面顯示的內(nèi)容很豐富,頁面中卻只有一個大大的框,那么這個框內(nèi)的內(nèi)容很可能就是由WebView顯示的。如當(dāng)當(dāng)APP中的云閱讀頁面

一個APP中既使用原生UI,又使用H5,是為了滿足不同的需求及用戶體驗。使用原生UI可以應(yīng)對流暢性體驗要求較高的場景和UI樣式相對固定,不會頻繁變化的頁面。使用H5頁面可以滿足較強(qiáng)的動態(tài)運營需求,UI樣式頻繁變化,滿足多平臺復(fù)用。

測試點有

1、App與HTML5對接部分需要加密傳輸;

2、App頭部的點擊后返回的是前一個頁面還是退回app主界面,需要注意;

3、從App各個入口進(jìn)入HTML5界面都是免登錄,各入口登錄、登出正常;

4、在各個機(jī)型中,屏幕較小和較大的機(jī)器會出現(xiàn)不能全部顯示或者部分空白的情況。

5、長時間不操作HTML5或者App,需要重新登錄,或者需要重新輸入密碼;

6、屏幕較小手機(jī)提交參數(shù)的確認(rèn)頁面,由于字?jǐn)?shù)較多會出現(xiàn)換行的情況,需要做適配。

小程序測試

微信小程序,簡稱小程序,英文名Mini Program,是一種不需要下載安裝即可使用的應(yīng)用。

它的測試點有

功能測試方面,要覆蓋各功能模塊;在業(yè)務(wù)和數(shù)據(jù)流程上,把各個功能點串聯(lián)起來形成完整的業(yè)務(wù)流程來檢查;功能模塊間的交互性檢查。同一個業(yè)務(wù),可能有不能的操作路徑來實現(xiàn),每個路徑都需要覆蓋檢查;同一功能的不同入口檢查;

易用性測試,包括,導(dǎo)航、功能入口,上下層級進(jìn)入&返回、其他人機(jī)交互體驗等

兼容性方面,主要指操作系統(tǒng)和屏幕分辨率方面,操作系統(tǒng)主要是指android系統(tǒng)和iOS系統(tǒng)。小程序運行在微信中,看起來是跟操作系統(tǒng)沒關(guān)系,實際上還是有關(guān)系的,因為底層調(diào)用依賴于具體的操作系統(tǒng)。按照官方文檔在微信小程序在ios上是運行在JavaScriptCore中但在Android上是通過X5JSCore來解析的。如果有條件,不僅要覆蓋android和iOS,包括主流的Android品牌也要覆蓋;分辨率方面,普通的手機(jī)APP會有屏幕兼容性的問題,小程序同樣有這樣的問題,只不過相對少了些。微信小程序定義了一個新的尺寸單位rpx(responsive pixel)可以適配不同尺寸的屏幕,在頁面上定義對象的單位是rpx就可以在不同的屏幕上適配。

安全方面,小程序是內(nèi)嵌到微信的,因此客戶端的安全性毋庸置疑。只需關(guān)注小程序本身與后端接口傳遞數(shù)據(jù)的安全性即可。此外,還要注意權(quán)限方面的要求。

接口測試,對接口進(jìn)行測試,和平時的接口測試是一樣的,沒有特別之處。但是我們需要了解的就是,微信小程序SDK提供的接口是websocket。WebSocket是 HTML 5的一個主要特性,它是建立在TCP上的一種全雙工協(xié)議,也就是說客戶端可以向服務(wù)器發(fā)信息,服務(wù)器也可以向客戶端推送消息。WebSocket 在首次建立連接時,使用普通?HTTP和服務(wù)器通信,同時告訴服務(wù)器后面的交互用WebSocket的方式。在WebSocket連接建立后,往來的消息都可以通過這條管道發(fā)送,同時客戶端與服務(wù)器也會不斷地用ping-pong的方式保持心跳,防止連接異常斷開。

性能測試,小程序的性能不是測試小程序的重點,優(yōu)先級也比較低。小程序的性能和WEB的性能測試非常類似,性能的常用指標(biāo)也大致相同。包括頁面的白屏?xí)r間,首屏?xí)r間,資源占用,頁面渲染時間,幀率等等。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • H5如何測試? 它跟安卓APP與IOS APP有什么樣的區(qū)別呢? 我們以往的APP是使用原生系統(tǒng)內(nèi)核的,相當(dāng)于直接...
    一箭閱讀 5,532評論 0 8
  • 前端開發(fā)面試題 面試題目: 根據(jù)你的等級和職位的變化,入門級到專家級,廣度和深度都會有所增加。 題目類型: 理論知...
    怡寶丶閱讀 2,686評論 0 7
  • 也不知道什么時候開始就小紅小紅的喊! 對你,也是想說的有好多好多,所以接下來只是一部分,目前可以想到的一些話呀! ...
    妖小瑤閱讀 403評論 0 0
  • 慢慢開始進(jìn)入狀態(tài),要跟老員工多學(xué)習(xí)方式方法,不輕易放棄,再執(zhí)著一點。
    53cd4ff88438閱讀 147評論 0 0
  • 今天四年級學(xué)生考試,數(shù)學(xué)題中有一個題目是“計算器哪個鍵是開?”很多學(xué)生選了“off鍵”?;丶覇杻鹤樱骸澳氵x的哪個?...
    毛毛雨1閱讀 309評論 0 1

友情鏈接更多精彩內(nèi)容