這是鼎叔的第十一篇原創文章。
行業大牛和剛畢業的小白,都可以進來聊聊。
歡迎關注本人專欄和微信公眾號《敏捷測試轉型》,大量原創思考文章陸續推出。
鼎叔在MTSC-中國移動網際網路測試開發大會,以及深圳敏捷之旅中,分享了《提升使用者體驗的評測方案》議題,本文是相關係列主題文章的第七篇。
隨著針對使用者體驗問題的挖掘經驗越來越豐富,我們就可以沉澱出原創的探索式測試方法(甚至是探索模型),並把最容易產生效果的挖掘場景,關注點,竅門,固化用例等記錄在知識庫裡,集體共享,提升使用者體驗問題的挖掘效能。
本篇重點介紹生動有趣的角色扮演探索式測試和肥皂劇模型。
角色扮演測試法
回到對測試人員“以人為本”的要求,如何在測試設計和執行中做到代表使用者?角色扮演就是一個有趣的思維方式,前提是,我們已經非常瞭解使用者的典型畫像,在心裡構建出了幾類典型的使用者特徵,賦予了生動的行為標籤,然後模擬該使用者的行為習慣,刻意挖掘相關路徑的問題。
以電商平臺為例,主要的角色可以劃分為幾類,我們想象一個真實的身邊的人(可以適度誇張和搞笑),具備下列特徵:
- 小A,廉價消費使用者,上電商網站的主要特徵就是摳門,一分錢要掰成兩分錢花,因此他特別關注秒殺活動,大折扣商品,熱衷於計算優惠規則,比較不同店家的價格,儘量參與可以帶來積分優惠的小遊戲。
- 小B,理性消費使用者,看重合理消費,希望不吃虧不上當,只看自己計劃購買的物品,會嚴格查閱產品規格和商家退換條款,看是否有質量隱患,或者任何讓自己避免踩雷的缺點,退貨頻率比較高。
- 小C,超級購物迷,剁手一族,長時間掛在電商網站上,最愛追購最新款商品,顏值最高的,重視宣傳圖片效果和好友評價,訂單數量驚人。
- 小D,品質消費者,看重高配置,大品牌,會從專業評測網站上獲取心儀品牌和商品資訊,參考相關專家的推薦意見,購買時會對客服諮詢專業問題。購物車經常存了一堆最熱門商品,但實際購買數量有限。
- 小E,隨意消費者,偶爾逛逛電商平臺,漫無目的,重點看智慧家居產品,瀏覽和購買過程操作隨意,不按常規操作步驟,什麼感興趣就去點選一下。
參加探索測試的幾個同學,分別扮演上述的角色,模仿其習慣去測試軟體,發現了共計38個有效問題,其中有6個屬於運營配置問題。從結果分析中,確實發現有特定偏好習慣的使用者,更容易發現特定型別的問題。
在角色扮演的基礎上繼續發揮,我們可以嘗試更大的挑戰-肥皂劇探索測試模型。
肥皂劇探索測試模型
我們平常看電視肥皂劇,經常覺得劇情狗血,有時陰差陽錯,有時又臭又長。可以設想一下,使用我們產品的使用者角色,圍繞產品使用的場景,發生一些狗血事件,會不會意外發現軟體設計缺陷?能不能把產品的各種核心功能/流程,都編入這個狗血的肥皂劇呢?
肥皂劇測試模型(Soap Opera Testing)是Hans Buwalda提出的系統級功能測試方法。其特徵和方法對於基於情景(Scenario)的探索式測試很有啟發性,是探索式測試者值得研究的工具。
一個肥皂劇測試的測試用例是一個場景(Scenario),類似於一個小故事或肥皂劇中的一段情節。Hans舉的這個汽車保險軟體例子非常有趣。
客戶Marick為了三天的旅途租了一輛汽車。在租用期間,他又延長了一週(以便獲得足夠的租用積分來得到Preferred等級)。幾天後,他打電話報告車丟了,並要求換車。他強調在更換車輛時,他理應享受Preferred等級,即便在租賃期開始時他並不位於該等級。他得到了另一輛車。兩天之後,他打電話報告那輛“被偷”的車被找到了。事實證明,實情是他忘記了停車地點。他希望歸還其中的一輛車,並結束相關的租賃業務。糟糕的是:發現舊車時,他的新車撞上了舊車。現在,它們都損壞了。
該情節將測試以下內容
(在租賃期)升級到Preferred等級
延長租賃
被盜申報
車輛更換
取消車輛更換
取消被盜申報
歸還受損車輛
這是一個典型的系統級的場景測試用例,用一個較長的流程覆蓋了系統的多個功能。在虛構的連續劇情中可以測試跨模組的功能場景,給測試過程帶來很多樂趣,測試居然還可以這麼玩:)
肥皂劇探索測試模型,特徵就是濃縮,有趣,誇張,源於真實生活:
- 源於真實生活:肥皂劇測試透過聚焦使用者的使用場景來伸張使用者權益。一些看似極端、卻可能真實發生的故事,往往能揭示產品的深層次錯誤。透過編寫肥皂劇測試用例,測試人員可以更好地學習並理解被測物件。
- 誇張:肥皂劇測試用戲劇性的問題來拷問軟體,看其在不同的場景下如何應對。誇張的情節讓肥皂劇更好看,誇張的測試用例有助於軟體應對現實難題。
- 肥皂劇測試同時展開多個複雜的情況,看軟體如何處理。軟體也許可以分別處理每一項業務,但是當多個業務同時提交且相互牽絆時,軟體的設計缺陷可能會讓使用者一籌莫展。肥皂劇往往展開多個支線情節,相互交織,彼此推動,測試場景也可以如此。此外,濃縮的情節可以在較短的時間內測試多個功能,提高了測試效率。
- 充滿樂趣的測試是高效軟體測試的核心因素之一。枯燥的測試過程會壓抑測試者的創造性,使測試人員的精力被快速耗盡,注意力漸漸被其他事務所吸引。而有趣的測試過程會激發測試者的創造力,使他們始終熱情高漲,思維活躍。所以,編寫測試用例要充滿樂趣,好的測試情節一方面容易理解,另一方面能夠激發審閱者、測試者的靈感,讓參與到其中的人員能夠發展出更好的支線和細節。
基於這個模型,我們可以虛構不同風格的劇本,溫情式,懸疑式,搞笑倒黴蛋,不一而足,充分發揮編劇想象力吧。
下面舉一個親身實踐,用“照片雲同步”這個大家熟悉的功能,來設計一個親情肥皂劇測試場景:
丟失的照片去哪了?
小李為了儲存記錄女兒成長過程中的美好瞬間,將一些照片上傳到了雲空間中,併為其購買了空間擴充收費包。某一天他發現手機提示他購買的雲端儲存空間自動續費已到期,無法上傳新的照片,而他不想再繼續升級雲空間,於是將雲空間內一些時間久遠的照片刪除,釋放雲空間記憶體,同時將這些照片保留在手機內。幾天後,女兒要上幼兒園了,需要提交一些照片建立學生檔案。但他沒想到的是,猶如晴天霹靂般,手機裡的這部分照片竟也不翼而飛了。原來小李為了留下這一部分的照片,他將這些照片移動到單獨的資料夾,然後刪除了雲端的照片,本以為萬事大吉,但他沒想到的是雲端刪除檔案後本地也會同步刪除,這讓他無比的鬱悶。最終,為了儲存女兒成長過程中更多的美好瞬間,小李再次升級了更大的雲端儲存空間。
那麼現在我們針對此故事情節,可以測試如下內容:
1. 在使用過程中升級雲空間;
2. 本地照片同步;
3. 雲端照片刪除;
4. 雲空間購買自動續費;
5. 本地修改已同步照片;
6. 雲空間升級方案變更;
從中我們可以感受到肥皂劇測試的魅力,帶著使用者的情緒,把各種功能場景融合在一個故事裡。測試用例就是劇本,它展示了舞臺;集編劇、導演、演員於一身的測試者應該發揮創造力,去演繹精彩的測試。
總結一下,測試人員構造肥皂劇測試用例的步驟:
1. 分析產品,確定產品的功能點,並擬定測試目標;
2. 設計一條或多條肥皂劇測試用例,以滿足測試目標;
3. 如果發現新的測試目標,延展已有的測試用例或增加新的測試用例,以確保測試覆蓋率。