作爲QA,我們要如何思考?

隨着測試人員陸續開始嘗試角色轉變,堅守的QA需要找到自己的發展之路。興趣和性格是客觀因素,好奇心和發散性思維則是幫助成爲優秀QA的必要因素我想通過一些小的例子來與大家互動探討。

測試你做對了嗎?

讓我們從這樣一個現實中的小例子來開始我們的思考之旅 “假如一堆稻草中不小心掉入了一根針,我們該如何將它找出呢?”

回想當時看到這個題目時,我的第一反應是太難找了。從這個小事例聯想到自己的工作,我作爲QA或多或少是否做過類似的事情呢?在初入行業的時候我可能就是這個在草堆裏找針的人,我花費了大量的時間仔細地在草堆外面認真查找,甚至使用了放大鏡一點一點的反覆,努力不漏過每一個角落。再後來慢慢積攢了一些經驗,我開始使用工具了。我嘗試使用不同吸力的磁鐵,金屬探測設備。這正是我工作經歷中的純黑盒測試階段與純自動化UI測試階段。

在有了不同的經歷後,我開始反思自我。類似大草堆裏找針這麼大的工程,耗時耗力,是否會有更好的辦法呢?我真應該去多瞭解一下每個產品使用的工具與技術,以及深入瞭解並參與它的搭建過程。於是我加入了TW,開啓了第三段測試之旅。

再回來看看這個例子,我在想也許草堆的中間是空心的,有一扇隱形的門可以走進去。但是在過去我竟然沒有想過要去嘗試(當然,這裏所說的沒有嘗試是比較誇張了點)。在我們打算開始堆草堆的時候就應該考慮的更多一些,制定相應的策略保證在堆積的過程中不會有一些雜物不小心被堆進去,我們應該爭取在草堆堆積的過程中不讓這根針有機可乘。相信大家對於敏捷實踐中的質量內建都非常的熟悉了,這裏我就不再贅述了,具體的大家可以閱讀TW 洞見中質量相關文章以及冰玉老師的個人博客

多思考,多探討,不要急於開始

有人告訴我下面這張圖片中有一隻蟲子,讓我猜猜它在哪裏? 我仔細地找了一遍沒找到,於是又開始第二遍第三遍的尋找。甚至試圖拿着放大鏡仔細研究這張圖片。我努力不放過每一個角落。可是最終我也未能找到,這隻Bug到底藏在了哪裏呢?

等到答案揭曉的時候,我忽然意識到了作爲QA我竟然忽略了最重要的東西——澄清。上週在聽冰玉老師的session《構建體系化思維》時,她對於這塊也做了詳細的講解。對於她給出的測試茶杯的例子印象非常深刻。面試的時候經常會隨機問候選人,水杯怎麼測,插線板怎麼測,開關怎麼測。有相當一部分的候選人覺得蒙圈,也有人覺得非常容易,很多人沒有要求思考時間也不提問,直接開始回答。這樣草率的回覆怎麼可能會是面試官想要聽到的答覆呢?

下面我以所在的某項目中最近發生的一件事情爲例引入我自己的一些反思。我們會批量生成一種類似於限量版的現金券,用戶收到該現金券便可使用它並從中受益,前期我們只做了簡單的生成與存儲。Marketing團隊會根據規則手動將限量版的現金券發給特定的用戶羣體。該功能投入生產後反響很棒,於是我們決定將發送流程自動化,集成到內部後臺系統,根據 Marketing 團隊上傳的用戶列表生成對應的現金券並綁定到相應的用戶賬戶。到這裏所有的需求都很清晰明瞭。

接下來客戶提出來既然券都跟用戶綁定了,那麼我們爲什麼不把它展示給用戶呢?於是提出了我們需要做一個最早可用版本用來展示功能。我們爲此專門定了一次會議,參與的人有客戶多部門的老大以及我們項目小組的所有相關人員。大家都很興奮我們要實現這樣一個功能了,我們討論了需求,設計,需求將要帶來的價值以及如何衡量這個需求是否成功的指標與方法。我們也書寫了相關的需求文檔。然而UX老大參與DC的時候,他詢問了我們這個版本是要給內測人員看嗎?經過一番討論,這時我們才發現大家的理解不一致。由於我們開始討論的時候提到了想根據市場效果再決定是否繼續做下一個版本,我們組的UX理解我們只給內測用戶展示,所以她設計了一個很簡單的展示版本。而其他人則認爲想先實現簡化版的功能,再根據市場反饋決定是否再進一步投入時間進行優化。等國慶假期過去了,我看到它竟然還沒有發佈。直到上週我們終於發佈了這個功能。

大致增加了:

  • 複雜漂亮的UX 設計
  • 分享現金券給他人
  • 用戶事件記錄
  • 自動發送通知給收到現金券的用戶
  • ......

對於純純的遠程協作團隊(成員分散在超過四個國家,超過5個城市),我們的線下交流少之又少。每天的交流主要是在站會和Mob會議裏(每天4小時),如果在我們開會討論需求的時候多討論幾句,在我們每天交流中多探討一些。可能我們能更早的意識到了我們大家對於Earlist usable 的理解是不同的,我們就能提早設計,不至於後來返工拖延了發佈。在後來的retro中,大家一致認爲在開始每一項工作之前我們就應該做足夠的思考與探討。

花絮: 儘管有點插曲,但是在發佈前內測的時候,客戶的老大們對這個功能的實現非常滿意,團隊開始諮詢marketing是否可以給我們每人一張現金券。客戶的老大們也開始通過這種方式去分享現金券給他們的好友們。

跳出思維定式的束縛

讓我們從一個簡單的小互動開始,一起感受一下我們怎麼考慮這個問題。請大家拿出小本本一起畫出如圖的9個點。然後用一筆將9個點連起來,你會怎麼連呢?

  1. 不同起點回形繞圈

  1. Z形

  1. 三角風箏形

  1. 用一根足夠粗的筆一筆劃過

我相信一定有很多聰明的小夥伴們想到了第四種方法。此處有掌聲

但是還是會有很多小夥伴很容易被問題中“連起來”幾個字帶着開始連線而忽略了最簡單的一筆劃過。

我看到過這樣一個實驗,將相當數量的蜜蜂和蒼蠅置於一個開口的瓶子中,將瓶子放倒,讓瓶底朝着有光的地方。大家猜猜接下來會發生?

結果蒼蠅跑光了,而蜜蜂基於出口就在光亮處的思維方式,設定了出口就是那個有光的地方,所以它們一直朝着光亮的地方努力而忽略了藏在暗處的出口,一次次地撞向瓶底。而毫無邏輯的蒼蠅到處亂飛卻意外地找到了出口。

大多數時候思維定式沒有錯,但是在一個產品上工作久了的夥伴或多或少都會遇到越熟悉的地方越容易出錯的情況。我自己也曾遇到過類似的問題。日復一日測試類似的功能讓我們很容易形成了思維定式,形成了固定的操作習慣。對於熟悉的功能反而考慮得不再那麼周全,總是以老的方式去考慮熟悉的功能,殊不知在不知不覺中它已不再那麼熟悉。而對於新的功能模塊大家通常都會格外的小心謹慎和關注。所以我自己會定期覆盤,定期反思。一旦發現自己沉浸於思維定式裏,一定要設法打破它。儘管我自己其實做的也並不是很好,但是我時常會反省並時刻提醒自己。

保持好奇,多提問

這裏又來了一個有意思的小互動,請大家幫忙找找以下這段話中包含有多少個字母F?

答案是6個,你找對了嗎?

請大家再一次幫忙找找這段話中有多少F呢?

答案是68個, 這次你對了嗎?

請大家回想一下在第一遍大家都是如何找的呢?有沒有漏掉的呢?在第二遍查找的時候大家又是如何做的呢?是否將第一次漏掉的字母找到了呢?看到這個配色大家應該多少有點好奇,爲什麼好好的一段話要用黑色背景,有多少人因爲好奇而做了進一步的思考與調查呢?聯想我們的日常工作,我們可能偶爾的遇到了一些奇奇怪怪的問題,但是刷新,重試之後我們發現問題不存在了,我們是否繼續深究了呢?很多時候往往都是這些不起眼的小問題積壓最終導致越來越多的系統問題。所以在我們每次遇到這些行爲的時候一定要保持住好奇心,多思考多調研。即使不能重現,我們可以停下來休息一下,畫一畫,再深入思考一下。我們可以截圖,查看日誌,回想自己的操作步驟和不尋常之處(也可以利用系統的行爲跟蹤工具,總結反饋或者諮詢相關人員。又或者我們可以記錄一個stakehold卡在我們的backlog裏面用來追蹤後續。)一定不要等到有一天客戶報了問題過來,我們突然意識到這個錯誤,這個問題自己曾經也遇到過。當然我們也得綜合考慮一下投入產出比,以及問題所帶來的用戶影響有多大,優先級如何等。在移動端測試中經常會有一些偶現的問題,有的問題真的是特別邊緣的情況,多個條件同時滿足才能偶爾觸發。有的卻是通過某些特定的操作就會100%觸發。所有保持好奇,適當的投入一些調研是很有非常有必要的。

提高專注還得發散

這個小題目貌似有點自相矛盾,到底是要專注呢還是要發散呢?讓我們還是先從互動開始探討。假如有一個大的正方形,它被平均分爲了四個小的正方形ABCD。A、B、C三個小正方形內分別嵌套了一個更小的正方形,那麼請按照要求的規則將每個圖形淡灰色部分進行切分。

  1. 請將右上角的正方形A中淡色部分分成兩個相同的圖形

  1. 請將左上角的正方形B中淡色部分分成三個相同的圖形

  1. 請將左下角的正方形C中淡色部分分成四個相同的圖形

  1. 請將右下角的正方形D中淡色部分分成七個相同的圖形

如果按順序來做這四次分割,每次成功完成一步我們會很容易嘗試使用相同的方法求進行下一次的圖形分割。然而到了第四步,我們可能還會專注於之前的分割思路。假如我只給出了一個單獨的正方形讓大家分成七份,大家應該都會很容易就可以分成功。

再來說說我自己,入行不久我就發現我自己的思維比較發散,想象力豐富,我經常是團隊中討論需求提問最多的那個人。每次有了新的需求,除了需求本身的描述,我可能會瞬間聯想到與它相關的大大小小的功能。時間久了我慢慢的反思總結,在討論需求的時候我們優先需要考慮需求本身,我們需要更多的關注點。其次,我們再向外發散考慮更多更深更遠的情況。在之前的一家公司我們經常在發佈前回歸測試階段抽出一定的時間來做隨機測試。 經常發現隨機測試發現的問題要比我們遵從測試用例做迴歸測試發現的問題多一些。就我自己而言在隨機測試階段我可以掙脫束縛,隨心的設想一些配置,再搭配上特定的一些用戶行爲。而在做隨機測試的時候,也不是完全沒有章法的胡亂點擊一通。我經常會提前設想一些情況,在紙上列出來,再思考並挑選一些出來。但是往往在操作的過程中我的步驟就突然間改變了,我會操作完某一步後,突然間聯想到另外的一些情況。然後轉而去嘗試。結果大多數時候都會有出乎意料的發現。

我總結了一下我自己,我本身的性格非常急,所以在日常工作中,我可能有時候容易思想不夠集中。尤其是在那種特別長的會議裏,我經常會在聽到發言人的某些發言後瞬間蹦出一長串的疑問,這時候怎麼辦呢?以前的我可能會很激動地就直接發問了。現在的我慢慢地意識到自己的問題,於是我學着將自己的思緒拉回,不要繼續在自己的疑問裏越走越遠。我會強迫自己繼續聽發言人的後續發言,結果往往會發現會議結束的時候我的很多問題都不是問題了或者並不那麼重要了。說了這麼多我其實就是想分享一下我自己關於專注與發散的經驗。我相信很多QA在專注力與發散這塊都有一些很好的見解,歡迎大家分享探討~

小結

賣了這麼多關子,到了我該回答問題的時候了。這麼多年我也不是沒有動搖過,但是每一次動搖的時候我都進行了深入地思考。我嘗試自問自答,最終我還是堅守在QA這個崗位。對於我爲什麼堅守,我想首先肯定是非常喜歡的。其次我覺得是因爲適合,這得歸功於我超強的好奇心以及發散的思維方式。當然也有性格相關的因素在裏面。另外,作爲一名QA,我們必須要有很強的責任心與溝通協作能力。

對於QA的思維方式,我相信小夥伴們都有很多自己的見解。歡迎大家共同參與討論~

Think more and deeper
Think out of the box
Questioning / Curiosity
Focus / Defocus

參考資料


文/Thoughtworks 趙瑞華
原文鏈接:https://insights.thoughtworks.cn/the-way-testers-think/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章