什麼是Web應用程式?什麼是移動應用程式?
聊兩種應用程式在測試方面的差別之前,要先清楚以上兩種應用程式是什麼。
簡單來說,web應用程式是在浏覽器中運作且無需下載下傳的應用程式,每個 Web 應用程式都包含一個可以通過 Web 浏覽器通路的界面,以及一個管理資料和執行特定流程的後端伺服器;移動應用程式是native應用程式,也就是我們常說的“應用程式”,是用于在平闆電腦和智能手機等小型移動裝置上下載下傳後運作的軟體程式,需要适配在不同的作業系統上運作。
針對兩種應用程式的測試
1.系統架構差別
web應用程式的系統結構是B/S結構,前端研發人員釋出代碼時無需區分端,代碼上線完成後所有客戶看到的都是同一個版本的代碼。是以無需對舊版本的代碼進行回歸測試,但有可能需要在不同的網絡浏覽器(類型/版本)和不同的螢幕大小上進行相容性的測試。
而移動應用程式的系統結構是C/S結構,前端研發人員上線時需要區分安卓端&iOS端,代碼上線後用戶端還是存在多個版本的代碼。是以移動應用程式在測試時需要對舊版本進行相容和回歸測試,同時也需要在不同的裝置、不同的手機系統版本以及不同的螢幕大小上進行測試,是以移動應用程式的測試相對更複雜。
2.測試過程不同
Web 應用程式的測試主要在桌上型電腦或筆記本電腦上進行,是以可以直接通過在Chrome浏覽器裡打開“檢查”,切換到network視窗檢視前端請求的接口。當然也可以用抓包工具抓取請求;web程式的自動化測試架構常見的是unnitest 和selenium;web應用的程式性能測試一般關注的是接口的響應速度。
移動應用程式的測試時,我們需要使用抓包工具Charles、fiddler等通過連接配接代理等方式抓取前端的請求; 常用的自動化測試架構有appium和 Airtest(可基于圖像識别和 poco 控件識别);移動應用程式在性能方面更注重并發、qps、耗電量等名額。
3測試關注點不同
Web 應用程式的測試中,我們仍是用标準的鍵盤和滑鼠輸入,是以這些使用者的互動操作是容易預測的,并且對測試人員來說設計的測試用例是相對完整的。
移動應用程式的使用者互動模式是很難預測的,可操作的組合更是無窮的,無論是安裝、解除安裝、覆寫安裝、冷啟動/熱啟動、中斷事件發生(傳回,畫面、音頻的打斷,電話、鎖屏、切背景等操作)、操作手勢組合(左滑右滑上滑下滑,拖動,長按,多點觸控)、網絡狀況不同、是否需要打開其他權限、橫豎屏的切換等,任何一個小的操作都使得目前測試變的更複雜。
運作環境不同
Web 應用程式測試是在模拟器或模拟器上完成的,是以web應用程式的性能完全依賴于裝置的浏覽器和 Internet 連接配接,這可能會影響其他所有使用者的使用者體驗;
移動應用程式測試是在真實裝置上完成的。,移動應用程式可以使用每個平台的本地語言(iOS 的 Objective C 和 Android 的 Java)或跨平台開發工具(Phone Gap)來開發,這些是為不同的移動作業系統(如 iOS 或 Android)明确建構的獨立應用程式,本機應用程式通常被建構為比其他應用程式更可靠和更快。但這也導緻原生應用程式開發和生産的成本更高。
最後,
盡管移動應用程式和 Web 應用程式測試之間存在差異,但它們仍然有一些共同點。例如,兩者都需要功能、性能、變更相關、可用性、相容性、本地化、恢複,甚至認證測試,是以我們對于測試工作的态度應該是相同的哦~