這樣考慮測試點,做個合格的測試工程師

一個測試工程師走進一家酒吧,要了一杯啤酒

一個測試工程師走進一家酒吧,要了一杯咖啡

一個測試工程師走進一家酒吧,要了0.7杯啤酒

一個測試工程師走進一家酒吧,要了-1杯啤酒

一個測試工程師走進一家酒吧,要了2^32杯啤酒

一個測試工程師走進一家酒吧,要了一杯洗腳水

一個測試工程師走進一家酒吧,要了一杯蜥蜴

一個測試工程師走進一家酒吧,要了一份asdfQwer@24dg!&*(@

一個測試工程師走進一家酒吧,什麼也沒要

一個測試工程師走進一家酒吧,又走出去又從窗戶進來又從後門出去從下水道鑽進來

一個測試工程師走進一家酒吧,又走出去又進來又出去又進來又出去,最後在外面把老闆打了一頓

一個測試工程師走進一

一個測試工程師走進一家酒吧,要了一杯燙燙燙的錕斤拷

一個測試工程師走進一家酒吧,要了NaN杯Null

1T測試工程師衝進一家酒吧,要了500T啤酒咖啡洗腳水野貓狼牙棒奶茶

1T測試工程師把酒吧拆了

一個測試工程師化裝成老闆走進一家酒吧,要了500杯啤酒並且不付錢

一萬個測試工程師在酒吧門外呼嘯而過

一個測試工程師走進一家酒吧,要了一杯啤酒;DROP TABLE 酒吧

測試工程師們滿意地離開了酒吧。

然後一名顧客點了一份炒飯,酒吧炸了

這個段子大家應該都聽說過,但是它真不是為了博君一笑。在清流看來,他不僅僅反映了測試工程師的辛酸,更指出了一個合格的測試工程師要考慮諸多測試點。那麼如何更全面的考慮項目的測試點,做到不遺漏呢?有沒有一個通用的規則或方法呢?

答案當然是肯定的。

任何事物都是有規律可循的。

  • 從功能上來考慮。從產品需求、開發需求等需求文檔出發,提煉功能測試點。這就要求測試人員熟讀需求文檔,明確業務邏輯。無論是Web端還是移動端或是PC端的產品,都要求明確當前項目中的功能模塊,每個功能模塊要實現的功能,每個功能的正向、反向的功能實現。熟練運用邊界值分析、場景法等基礎的用例設計方法,爭取在功能上考慮全面,保證功能上的用例覆蓋率。這是作為測試人員最最基礎的能力

  • 從壓力上考慮。在考慮功能實現的基礎上,對一些主要功能點或是可能存在壓力的功能點要考慮壓力測試的用例。例如最常見的「登錄」功能、社交類產品的「發消息」功能等,不僅要考慮同時多人登錄/發消息還要考慮不間斷重複登錄/發送消息10分鐘等壓力點。

  • 從性能上考慮。首先說明一點,很多人可能會說我只做功能測試,性能壓力這些就不用考慮了吧。有這個觀點的同學陷入了一個誤區,是不是你執行性能壓力測試和你是否考慮到了性能、壓力的測試點完全是兩回事兒。性能測試點的考慮分為兩個方面:一是伺服器的性能(包括響應時間、TPS、伺服器CPU、內存、磁碟讀寫速度等);二是前端性能(手機、PC的CPU、內存、耗電量、流量使用情況等)。當然不是所有功能都要考慮性能測試點,對於主要功能、重要功能、產品明確標識的功能都要考慮性能測試。對於如何進行性能、壓力測試後面的文章會專門講解。

  • 從網路情況考慮。所有的互聯網產品都會依賴於網路,因此網路在測試過程中是非常重要的。在考慮網路因素時,主要有以下幾個方面:1、不同網路類型(2G、3G、4G、Wifi)2、不同網路狀況(弱網、限速、VPN、正常網路)3、不同網路運營商(鵬博士、電信、網通、移動、教育網等)4、特殊網路情況(斷網重連、網路切換等)

  • 從兼容性考慮。絕大多數項目不會只適應一款系統,市面上的手機、瀏覽器、PC五花八門,而且都有著眾多的用戶,因此測試人員要將兼容性測試放在非常重要的地位。兼容性測試根據項目實際,基本分為三類:1、Web產品,主要考慮市面上主流的瀏覽器的兼容性(谷歌、火狐、IE9及以上、Safari、360、搜狗、UC等)以及不同電腦解析度情況下產品的顯示及使用情況。2、App產品,主要考慮市面上不同系統(Android4-7,IOS8-11)、不同品牌(蘋果、華為、三星、小米、魅族、vivo等主流機型)、不同屏幕大小、不同配置(低、中、高)的兼容性。3、PC類產品,主要考慮不同系統(win7-10,OS8-11)下的產品使用情況。

  • 從易用性考慮。目前越來越多的同類產品競爭,使得用戶體驗越來越重要,站在用戶角度的測試人員要對用戶體驗提高重視。用戶體驗不僅僅包含操作的體驗,還包含宗教、文化、習俗、目標人群特性等方面的考慮,甚至還要考慮法律法規的限制。因此在工作中要求我們多思考,多總結,知識的全面性很重要。

  • 從UI層面考慮。檢查產品UI是否與設計圖相符合、文案是否存在錯別字。細節之處見功夫,尤其是涉及到財務、支付等敏感的功能,一個細小的錯誤就可能導致巨大的損失。

  • 特殊情況的考慮。特殊情況是指用戶在使用過程中可能存在的異常情況。例如使用一款App突然來電、電量過低、收發簡訊、Home鍵、鎖屏鍵的使用等情況。

  • 其他情況。每一個項目都有他的特性,在考慮到上述情況之後,一定要考慮到當前項目的特殊性。例如銀行、保險類的項目,涉及到複雜的業務邏輯,一定要針對這些業務邏輯、功能限制設計一些針對性的測試點。

說了這麼多,並不是說考慮到這些就萬無一失。還需要大家去思考、去總結適合自己的方式方法。同時歡迎大家關注【軟體測試的藝術】微信公眾號,一起交流學習,並積极參与有獎投稿。


推薦閱讀:

手機黑盒測試
軟體測試要學什麼?面試時哪些基本知識要掌握?
乾貨—Go語言編寫單元測試
HTTP協議中的COOKIE機制簡單理解
webdriver介紹&與Selenium RC的比較1

TAG:軟體測試 | 測試工程師 |