萬盛學電腦網

 萬盛學電腦網 >> 網頁制作 >> 交互設計 >> 移動APP測試實用指南

移動APP測試實用指南

 移動APP測試實用指南 三聯

  譯者注:本文從測試人員的角度出發,提出了100多個在測試移動App過程中需要考慮的問題。不管你是測試人員、開發、產品經理或是交互設計師,在進行移動App開發時,這些問題都很有參考價值。我和Queen合力譯出此文,分享給大家,希望有所幫助和啟發。

  測試人員常被看作Bug尋找者,但你曾想過他們實際是如何開展測試的嗎?你是否好奇他們究竟都做些什麼,以及他們如何在一個典型的技術項目中體現價值?

  作者將帶你經歷測試人員的思維過程,探討他們測試移動App時的各種考慮。本文的目的在於揭示測試人員的這一思維過程,並展示他們通常所考慮內容的廣度和深度。

  測試人員需要詢問問題

  測試人員的核心能力在於提出有挑戰性的相關問題。如果你能將調查、詢問技巧和技術、產品的知識結合起來,漸漸地,你也會成為一個好的測試人員。

  比如,測試人員可能會問:

  這個App應該在什麼平台上使用?

  這個App到底是干什麼的?

  如果我這樣做,會發生什麼情況?

  諸如此類。

  測試人員能從各種場景中發現問題,它們可能來自對話、設計、文檔、用戶反饋或者是產品本身。這些可能性太多了……因此,讓我們一探究竟吧!

  從哪裡開始測試

  理想情況下,測試人員應該掌握所測產品的所有最新細節資料。但事實上這很少見,因此,像其他人一樣,測試人員只能將就使用手上有限的資料。但這不是不能測試的借口!測試人員其實是可以從內部和外部多種不同的來源處收集信息的。

  這個階段,測試人員可以問這些問題:

  有哪些信息:規格?項目會議?用戶文檔?知識淵博的團隊成員?有支持論壇或者是公司在線論壇提供幫助?有現存Bug的記錄嗎?

  該應用是在什麼系統、平台和設備上進行運作和測試?

  該應用是處理什麼類型的數據(比如個人信息、信用卡等等)?

  該應用有整合外部應用(比如API和數據來源)嗎?

  該應用需要用到特定的移動端網頁嗎?

  現有消費者如何評價這個產品?

  有多少時間可用於測試?

  測試的優先級和風險是什麼?

  哪些用戶使用起來不愉快,為什麼?

  如何發布和更新?

  基於以上收集的信息,測試人員可以制定測試計劃了。通常預算決定測試方法,一天測完,一個星期或一個月測完的方法肯定不同。當你逐漸熟悉團隊、工作流程以及這類問題的解決方式時,你就更容易預測結果了。

  案例:FacebookApp的社會評論

  當作為一名測試人員收集信息時,我喜歡選用FacebookApp作為案例,因為用戶的抱怨到處都是。以下僅僅展示了部分遇到難題的用戶在iTunesAppStore中發表的評論,網絡上還有很多。

超贊!移動APP測試實用指南

  iPhone上的FacebookApp有很多負面的評論

  如果我接受挑戰去測試Facebook這個App,我肯定會考慮這些反饋,否則就是傻子。

  測試人員的創造力

  你可能知道這個App原本想做的事,但是它究竟可以做什麼事呢?用戶實際上是如何使用它的?測試人員擅長作為旁觀者來思考,嘗試不同的事物,以及不斷地詢問“如果。。。會怎麼樣”和“為什麼”的問題。

  比如,移動端的測試人員常常以不同的用戶角色進行測試——當然有點誇張,但是,這種把自己當成不同用戶進行思考、分析和設想的能力對測試是備受啟發的。

  測試人員可能會設想自己是以下用戶:

  毫無經驗;

  很有經驗;

  愛好者;

  黑客;

  競爭對手;

  當然還有更多可選的角色,這主要取決於你們所開發的產品是什麼。其實除了角色特點外,其操作行為和工作流程也很重要。人們使用產品方式常常很奇怪,比如:

  在不應該返回的時候返回了;

  不耐心而且多次敲按鍵;

  輸入錯誤的數據;

  不理解該怎麼做;

  可能沒有按要求進行設置;

  可能會自以為是地認為自己知道該做什麼(比如通常不閱讀說明)。

  測試人員遇到這些問題時,也常常發現意料之外的Bug。有時候,這些Bug微不足道,但是更深入的調查就會發現更嚴重的問題。

  很多問題是可以被預先確定和測試的。測試移動端App時,以下的問題並不都有關,但是也可以嘗試問問:

  是否按照所說的來做呢?

  是按設計完成任務的嗎?

  不是按設計完成任務的嗎?

  如果處於一直被使用或者負荷情況下,狀況會怎麼樣?會反應遲鈍嗎?會崩潰嗎?會更新嗎?有反饋嗎?

  崩潰報告會反饋到App嗎?

  用戶可能有哪些創造性的、邏輯性的或是消極的導航方式?用戶相信你的品牌嗎?

  用戶的數據安全如何?

  有可能被中斷或是被破解嗎?

  運行到極限時會發生什麼狀況?

  會要求打開相關服務嗎(如GPS、Wi-Fi)?如果用戶打開會怎樣?沒打開又會怎樣?

  將用戶重新引向哪兒?去網頁?還是從網頁到App?這會導致問題出現嗎?

  溝通過程和市場反饋是否符合該App的功能、設計和內容?

  登錄流程是怎樣的?能在App上直接登錄還是要去網頁端?

  登錄是否整合了其他服務,比如用Facebook和Twitter帳號登錄?

  案例:RunKeeper’sgyUpdate

  RunKeeper,是一款能跟蹤你健身活動的App,最新發布的版本裡有個“目標設置”的功能,對此我很感興趣去體驗一下,一部分從測試人員的角度來看,更多的是作為一個真心喜歡產品的用戶來體驗。但我發現了一些問題:

  1.默認單位是英鎊,我卻想要把公斤作為重量單位;

  2.英鎊和公斤間的切換根本不好用;

  3.當設定目標後,會導致展示錯誤的數據和圖表,這讓我很迷惑;

  4.由於第3條,我想刪除目標,但卻根本找不到刪除的地方;

  5.為了解決這一問題,我不得不改變的個人體重的值,直到“目標設置“范圍之內,這樣目標達到了,就能重新設定目標了;

  6.我會再次嘗試添加目標;

  正因為以上疑惑,我花了更長的時間把玩它,看能不能找到其他的問題;

  以下是一些發現問題的屏幕截圖:

超贊!移動APP測試實用指南

  該App的最新版本包含了一個新的“目標”部分。設置日期的時候,我發現開始和結束的日期都可以從公元1年開始,另外,為什麼有兩個1年可選(譯者注:年份那列從上往下應該顯示為“1、2、3”)?

超贊!移動APP測試實用指南

  另一個Bug,是“當前體重”部分的一個拼寫錯誤,當清空數據時會出現拼寫錯誤的“Enter“(應用中用的是Etner),這只是一個小Bug,但是看上去非常不專業。

  發現問題沒有捷徑,你只能反復的慢慢的試用。每個App及其團隊都會面臨很多不同的挑戰。但是,測試人員的典型的特點就是:超越極限,做一些非常規的、可以改變周圍事物的事情,保持長時間的測試(測試幾天、幾個星期甚至幾月,而不是幾分鐘就測完),即使明明知道這些事情是不可能發生的。這些也正是可以找到和引出的場景所在。

  哪兒有所有的數據?

  測試人員喜歡從數據上找問題,這讓開發人員有時候很郁悶。事實上,用戶或者是軟件開發人員在信息流中確實太容易迷惑了,因為可能會出現很多錯誤,所以基於數據和雲的服務更為重要。

  也許你可以嘗試在以下場景中檢查出問題:

  移動設備數據已滿;

  測試人員移除了所有的數據;

  測試人員刪除了App,那數據怎麼辦?

  測試人員刪除並重裝了App,數據怎麼辦?

  過多或者過少的內容導致設計和布局的改變;

  在不同的時間段和時區使用;

  數據不同步;

  同步被中斷;

  數據更新影響其他的服務(比如網頁和雲端服務);

  快速處理數據或是處理大量的數據;

  使用無效的數據;

  案例:Soup.me的錯誤

  我試用過的Soup.me,是一個可以通過地圖和顏色將個人Instagram中的照片進行分類的網頁服務,但是我卻沒用多久。當注冊時,它提示我Instagram上的照片不夠多,然而我的賬號中明明有500多張照片。我並不清楚問題出在哪兒,也許是數據問題,也許是表現層的問題,也有可能是該App出錯提示的問題。

超贊!移動APP測試實用指南

  另一個案例:Quicklytics

  Quickytics是一個iPad上的網頁分析應用。在使用過程中,盡管我已經從Google Analytics中刪除了網站配置,但它仍然存在。這裡有一些問題:

  我已經刪除了網站配置,為什麼還是有這些信息?

  左邊模塊

copyright © 萬盛學電腦網 all rights reserved