測試本質(zhì):當說在項目測試的時候,究竟在測試什么
? ? ? ? ?參加過一個測試大會,會上各種自動化、性能、新型測試方法撲面而來。聽后確實思路有所開闊,但又不禁想:為什么類似的分享/大會幾乎很少有人專門講測試思維、測試本質(zhì)之類的思想。各個公司,各個業(yè)務(wù),幾乎都有相似的測試方法,而不同的是具體的測試實施、以及不同業(yè)務(wù)實現(xiàn)的測試;各個測試人員由于經(jīng)驗,眼界的不同,對測試的理解也不一。故而這里,想來說說脫離于具體測試任務(wù)之外的測試思想/測試本質(zhì)的一些感悟。
? ? ? ? 之前寫過一些測試思維/方法論的博客,如:測試的軟硬實力、線上線下系統(tǒng)的區(qū)別、QA的幾種境界、產(chǎn)品質(zhì)量的不同層次等等。工作以來,也經(jīng)歷過大大小小的不同類型的業(yè)務(wù):B端業(yè)務(wù)、C端業(yè)務(wù)、線下業(yè)務(wù)、從0到1的“創(chuàng)業(yè)型”項目。不同階段、不同類型的業(yè)務(wù),對測試的需求是不同的。
? ? ? ? ? 下面將先分別淺談不同階段的業(yè)務(wù)、不同端的業(yè)務(wù)、不同類型的業(yè)務(wù)的測試差異,再抽離其中的測試目標/本質(zhì)。以下僅是個人觀點,歡迎批評指正。
一、不同階段業(yè)務(wù)對測試的需求不同
不同階段業(yè)務(wù)對測試的需求不同。這點幾乎經(jīng)歷過的人員都心有戚戚焉。
1、0到1的“創(chuàng)業(yè)型”業(yè)務(wù),無論項目的緊急程度,還是工作量,都遠遠超過成熟期業(yè)務(wù)。此時不僅需要強大的抗壓能力,更需要豐富的經(jīng)驗支持快速業(yè)務(wù)更迭、功能/性能/安全性/易用性...等等。相對于成熟型業(yè)務(wù)90%都在做回歸型測試,新型業(yè)務(wù)不僅要去拿出足夠的時候去支持回歸型測試、更要去保障業(yè)務(wù)線測試(簡言之,新型業(yè)務(wù)量~=2倍以上的成熟型業(yè)務(wù),附帶還要干開發(fā)聯(lián)調(diào),第三方溝通,規(guī)范制定,方案制定與實踐等等方面)。
? ? ? ?此時的測試人員,70%~80%的時間會都在項目測試本身上,加上項目測試本身外的第三方溝通、項目“后期”保證、共識&流程方面的建設(shè),測試人員幾乎沒有太多時間學習,code工具了(ps:個人認為,此時測試人員本身的技術(shù)水平,相對來說,由于時間限制會比較少,只能靠擠時間了)。
2、“半瓶水”型業(yè)務(wù)。此類業(yè)務(wù)項目的緊急程度,還是工作量介于創(chuàng)業(yè)型業(yè)務(wù),成熟期業(yè)務(wù)之間,而且項目規(guī)范,實踐經(jīng)驗,測試方案...都有了一定程度的積累。此時業(yè)務(wù)需要的測試人員,除了測試經(jīng)驗豐富外,還要有推進整體項目趨于成熟的能力,包括:項目共識的流程規(guī)范、更加成熟高效的測試方案、更全面的質(zhì)量運營工作。
? ? ? ?此時的測試人員,50%時間會都在項目測試本身上,50%時間會在工具、自動化開發(fā),個人成長上面。這可能是最理想的一種狀態(tài)了(個人認為,此時也是測試人員個人成長,業(yè)務(wù)/技術(shù)產(chǎn)出最大的一個階段了)。
3、成熟期業(yè)務(wù)。此類業(yè)務(wù)往往屬于公司/平臺長期發(fā)展的一塊重頭戲,盈利性業(yè)務(wù),故而業(yè)務(wù)本身相對來說上線質(zhì)量遠遠大于迭代速度了。業(yè)務(wù)大多數(shù)屬于“修修補補”“零零碎碎”的業(yè)務(wù),迭代速度相對較慢(這里指迭代的工作量),項目流程規(guī)范、測試方案相對來說比較固定。
? ? ? ?此時的測試人員,幾乎會有70%左右的時間用于自身建設(shè)、工具研發(fā)等等,項目測試壓力本身相對較小。
二、不同端業(yè)務(wù)對測試的需求不同
? ? ? 目前幾乎所有公司招聘測試人員,都會備注有xxx業(yè)務(wù)測試經(jīng)驗的人員優(yōu)先。不同類型業(yè)務(wù)的確會對測試有不同的需求:
1、端上的測試。包括APP,客戶端。測試類型包括:功能測試、兼容性測試、性能測試、用戶體驗測試、軟件權(quán)限、安裝與卸載、數(shù)據(jù)安全性、離線瀏覽、APP更新、PUSH測試、交叉事件測試等等。ps:此時的端僅指前端APP,不包括后端實現(xiàn)。
2、m站的測試。測試類型包括:功能測試、兼容性測試、性能測試、用戶體驗測試、數(shù)據(jù)安全性、離線瀏覽等等。ps:此時的端僅指前端頁面,不包括后端實現(xiàn)。
3、web測試。測試類型包括:功能測試、兼容性測試、性能測試、用戶體驗測試、數(shù)據(jù)安全性等等。ps:此時的端僅指前端頁面,不包括后端實現(xiàn)。
4、純后端測試。測試類型包括:功能測試、性能測試、一致性測試、安全測試、數(shù)據(jù)測試等等。
三、不同業(yè)務(wù)類型對測試的需求不同
由于具體的業(yè)務(wù)類型太多,這里僅僅舉出常見的業(yè)務(wù):
1、電商類業(yè)務(wù)。這種業(yè)務(wù)涉及訂單、交易、物流追蹤等等,某一個環(huán)節(jié)出問題,可能直接流失收益或客戶,所以這類業(yè)務(wù)的測試除了通用的測試經(jīng)驗外,還需要些交易方面經(jīng)驗的積累,能夠減少故障的發(fā)生,同時能把控交易業(yè)務(wù)方面的需求。
2、廣告類業(yè)務(wù)。這種業(yè)務(wù)往往涉及打點上報、廣告排序、廣告展示等等方面,通常廣告收入是最重要的業(yè)務(wù)指標。把控提高廣告收入的需求評估,是此類業(yè)務(wù)的重點。
3、數(shù)據(jù)類業(yè)務(wù)。這種業(yè)務(wù)往往伴隨著大數(shù)據(jù)統(tǒng)計、報表計算、數(shù)據(jù)呈現(xiàn)等方面,屬于數(shù)據(jù)端的下游??焖俑咝У耐ㄟ^數(shù)據(jù)統(tǒng)計滿足各個方用戶的需求,同時又能從分析數(shù)據(jù)中給各個用戶以更有價值的指導,是此類業(yè)務(wù)的核心了。
4、金融類業(yè)務(wù)。這類業(yè)務(wù)往往直接和錢打交道,而且業(yè)務(wù)本身需求金融知識作為支撐,屬于背景知識要求較高的一類業(yè)務(wù)了。當然了,既然和錢直接打交道,這類業(yè)務(wù)的測試會更加偏重數(shù)據(jù)計算。
5、社交類業(yè)務(wù)。這種業(yè)務(wù)往往存在若干個角色,并且伴隨著若干個角色直接的互動交互。測試重點更加偏重場景的交互,以及每種角色在業(yè)務(wù)中需求的滿足。因而,此類業(yè)務(wù)測試需要更加注重易用性、用戶測試。
6、游戲類業(yè)務(wù)。這種業(yè)務(wù)除了游戲門戶網(wǎng)站外,還有具體游戲本身的測試。此類業(yè)務(wù)更加偏重對目標人群的研究,滿足目標人群的心理需求,設(shè)法使其精神上得到最大的滿足。
7、軟硬結(jié)合的業(yè)務(wù)測試。此類業(yè)務(wù)包括物聯(lián)網(wǎng)方向、人工智能方向等等,軟件測試不必多說,硬件的測試本身就需要專業(yè)的技術(shù)背景。個人認為,軟硬件結(jié)合的業(yè)務(wù),大致需要兩撥人來進行全面質(zhì)量把控:
1) 軟件方面測試人員
2) 硬件方面測試人員
經(jīng)過一段時間的磨合,這兩方面的測試人員會漸漸融合起來。
四、測試的本質(zhì)
? ? ? ? ? 不同階段的業(yè)務(wù)、不同端的業(yè)務(wù)、不同類型的業(yè)務(wù)都需要不同程度、不同方法的測試。但測試的目的是什么呢:
1、檢查產(chǎn)品是否滿足需求定義(包括功能、性能、易用性...)
2、檢查產(chǎn)品是否符合上線要求(除了需求定義外,可能還包括安全性/故障預(yù)防/數(shù)據(jù)統(tǒng)計...)
3、檢查產(chǎn)品是否可解決目標用戶群的一類問題(除了上線要求外,還要能實實在在解決用戶的問題)
4、檢查產(chǎn)品是否可持續(xù)性滿足用戶群的需求(除了解決問題外,還要使其心情愉悅/滿足/“流連忘返”...)
? ? ? ? ?在實際的項目測試中,或許上面的四個方面都會有所涉及,測試最本質(zhì)的東西:測試產(chǎn)品與用戶需求直接的差距,此差距在團隊所有成員(產(chǎn)品/開發(fā)/UI/測試/市場人員/運營人員...)的共同努力下,逐漸縮短這個差距。? ? ? ? ? ? ? ? ? ??
總結(jié)
? ? ? 不同階段的業(yè)務(wù)、不同端的業(yè)務(wù)、不同類型的業(yè)務(wù),除了通用的測試技能外,對測試都有其專項能力要求。這就是通常在說項目測試的時候,所涉及的主要內(nèi)容了。 之前有博客探討過測試的軟硬要求:測試的軟硬實力。通常所說的項目測試,屬于硬能力的一種,屬于測試認知的第一階段。
? ? ? ? 測試認知的第二階段,屬于測試的軟能力,是凌駕于硬能力之上的能力。不同階段的業(yè)務(wù)、不同端的業(yè)務(wù)、不同類型的業(yè)務(wù),除了通常意義的測試之外,更重要的在于測試產(chǎn)品與用戶需求之間的差距,這就是測試最本質(zhì)的東西了。