一、APP、Web、H5測試總結
web項目,一般都是b/s架構,基於瀏覽器的,而app則是c/s的,必須要有客戶端。首先從系統架構來看的話,web測試只要更新了服務器端,客戶端就會同步會更新。而且客戶端是可以保證每一個用戶的客戶端完全一致的。但是app端是不能夠保證完全一致的,除非用戶更新客戶端。如果是app下修改了服務端,意味着客戶端用戶所使用的核心版本都需要進行回歸測試一遍。
相同點:
1、從功能測試的來講的話,在流程和功能測試上是沒有區別的。系統測試和一些細節可能會不一樣。
2、性能方面,web頁面可能只會關注響應時間,而app則還需要關心流量、電量、CPU、GPU、Memory
3、兼容方面,web是基於瀏覽器的,所以更傾向於瀏覽器和電腦硬件,電腦系統的方向的兼容,不過一般還是以瀏覽器的為主。而瀏覽器的兼容則是一般是選擇不同的瀏覽器內核進行測試(IE、chrome、Firefox)。app的測試則必須依賴phone或者是pad,不僅要看分辨率,屏幕尺寸,還要看設備系統。系統總的來說也就分為Android和iOS,不過國內的Android的定制系統太多,也是比較容易出現問題的。
4、相比較web測試,app更是多了一些專項測試:
一些異常場景的考慮以及弱網絡測試。這里的異常場景就是中斷,來電,短信,關機,重啟等;而弱網測試是app測試中必須執行的一項測試。包含弱網和網絡切換測試。需要測試弱網所造成的用戶體驗,重點要考慮回退和刷新是否會造成二次提交。需要測試丟包,延時的處理機制。避免用戶的流失。這些在前面的弱網測試那篇已經講過,這里不再講了。安裝、卸載、更新,現在app產品的用戶都是使用的觸摸屏手機,所以測試的時候還要注意手勢,橫豎屏切換,多點觸控,事件觸發區域等測試。
web測試是基於瀏覽器的所以不必考慮這些。而app是客戶端的,則必須測試安裝、更新、卸載。除了常規的安裝、更新、卸載還要考慮到異常場景。包括安裝時的中斷、弱網、安裝后刪除安裝文件,更新的強制更新與非強制更新、增量包更新、斷點續傳、弱網,卸載后刪除app相關的文件等等。
APP端測試:https://www.cnblogs.com/linbo3168/p/9047313.html
1、對UI要求比較高,需要更加注重用戶體驗。對於一個小小的屏幕,如何讓用戶使用更加輕便、簡介、易用。
2、性能方面,web頁面可能只會關注響應時間,而app則還需要關心流量、電量、CPU、GPU、Memory
2、手機對網絡要求比較特別,網絡分2G,3G,wifi
3、版本升級測試,及對老版本回歸測試
4、Push推送測試
5、iOS、Android及系統兼容性測試
Web端測試:
1、體驗
2、穩定性
H5頁面測試:
H5測試就是HTML5,就是移動端web頁面。
我們以往的APP是使用原生系統內核的,相當於直接在系統上操作,是我們傳統意義上的軟件,更加穩定。H5的APP先得調用系統的瀏覽器內核,相當於是在網頁中進行操作,較原生APP穩定性稍差。H5最大的有點是可以跨平台,開發容易。APP的話需要用Android語言和iOS語言各寫一套,H5只需寫一套。
H5測試應該從哪方面考慮?
除基本的功能測試之外,H5頁面的測試,需要注意以下幾點:
1.1登錄
目前H5與native各個客戶端都做了互通,所以在測試的時候需要注意兩點:
A、若客戶端已經登錄,進入H5后仍然是登錄狀態
B、若客戶端未登錄,進入H5,點擊對應按鈕或鏈接,如果需要登錄,需要拉起native登錄。若取消登錄,是否可再次拉起登錄,或停留在頁面是否有對應登錄提示。
1.2翻頁
遇到翻頁加載的頁面,需要注意內容為1頁或者多頁的情況。
A、數據分頁加載的時,注意后續頁面請求數據的正確。這個需要注意在快速操作場景中,請求頁數是不是一次遞增,快速操作(如第一次尚未loading出來的時候仍然繼續上拉操作)時是否發出去對應的請求
1.3刷新與返回
A、下拉舒心是否仍然處於當前頁面
B、用戶主動點擊刷新按鈕是否仍然處於當然頁面
C、當點擊返回與back鍵,回退頁面是否期望頁面
1.4數據的請求與返回
A、提交了請求,是否正確返回期望的數據
2、H5適配相關
H5的適配其實與客戶端相比,要求少一些,手機品牌之間的差異不大,所以不用太多關注。
A、大屏(如720*1280,重點關注頁面背景是否完全撐開頁面,刷新是否有抖動)、小屏手機(如320*480,重點關注下拉彈窗樣式和文案折行)
B、Android
C、iOS
D、瀏覽器上也要完美展示
3、安全相關
3.1明確投放渠道都有哪些
是否對投放渠道做了限制,直接通過url請求是否攔截等
4、體驗相關
4.1收集操作相關
A、鎖屏之后展示頁面
B、回退到后台之后,重新呼出在前台展示
C、手指歡動師范流暢,手指點擊時焦點是否定位正確,不同機型會不一樣
4.2弱網絡體驗
5、埋點數據檢查
二、客戶端測試
1、網絡測試需要關注點:
1) 無網絡,執行需要網絡的操作,要有友好的提示,確保程序不出現crash。由於
網絡出現crash都屬於bug。
2) 無網絡,執行需要網絡的操作,要有友好的提示,確保程序不出現crash。由於
網絡出現crash都屬於bug。
3) 網絡信號不好時,檢查功能狀態是否正常,確保不因提交數據失敗而造成crash
4) 網絡信號不好時,檢查數據是否會一直處於提交中的狀態,有無超時限制。如
遇數據交換失敗時要給予提示
5) 網絡信號不好時,執行操作后,在回調沒有完成的情況下,退出本頁面或者執
行其他操作的情況,有無異常情況。此問題也會經常出現程序crash
2、應用的前后端切換
1)APP在處理彈窗時、有數據交換時、
操作:app切換到后台、手機鎖屏截屏、有電話打來再回到app時
驗證結果:檢查是否停留在上一次操作界面,功能及應用狀態是否正常(特別是在處理彈出框時),程序是否有崩潰,功能狀態是否正常(特別是數據有更新的時候)
2)殺掉APP,再次打開,啟動是否正常
3、數據更新
根據業務規則以及數據更新情況,來確定最優的數據更新情況
1)需要確定哪些地方需要手動刷新、自動更新、
2)數據展示部分處理邏輯,是每次從服務端請求還是緩存在本地,這樣才有針對性的做測試
3)檢查有數據更新的地方均有做異常處理
4、Push測試
1)檢查Push消息是否按照正常的業務規則發送
2)如果不接收Push消息時,檢查用戶不再收到消息推送
3)如果用戶設置了免打擾的時間段,檢查在免打擾時間段內,用戶接收不到push。 在非免打擾時間段,用戶能正常收到push
5、客戶端更新
客戶端更新一般是通過判斷與服務器端返回的當前版本號比較來判斷是否有更新。我們測試模擬更新時,首先要了解到服務端當前版本號(1.0),然后讓客戶端打高版本的安裝包(2.0),通知服務端改服務端版本號也改成2.0,把2.0安裝包放服務端后。即可開始升級測試。
1)當客戶端有新版本時,提示更新
2)當版本為非強制升級版時,用戶可以取消更新,老版本能正常使用。用戶在下 次啟動app時,仍能出現更新提示。如果是正式app已經上線,那么升級時一定要考慮老版本是否能正常使用。
3)當版本為強制升級版時,當給出強制更新后用戶沒有做更新時,退出客戶端或 者切換到后台,下次啟動app時,仍出現強制升級提示
4)覆蓋安裝后,用戶信息仍然保留
5)更新成功,檢查是否是新版本,並且不能再提示更新
6)老版本回歸
6、免登陸
1)很多應用支持免登陸瀏覽,當應用開啟時自動以上一次登錄的用戶身份瀏覽
2)無網情況能否正常進入免登陸狀態
3)密碼更換時,檢查有數據交換時是否進行的身份校驗
4)用戶主動退出,下次再登錄時是否停留在登錄頁面
7、通用測試
1)對模擬鍵盤的處理,例如鍵盤展開后,點擊其他位置,鍵盤能否正常收起,鍵盤使用完畢后,能否正常收起
2)同時快速點擊兩個不同的按鈕,檢查程序是否正常,是否有閃退現象
3)文字特殊符號的展示顯示能正常輸入,不轉義顯示,如<>不會顯示成<>