周六項(xiàng)目發(fā)生了一起事故,一個(gè)簡(jiǎn)單的服務(wù)器修改功能,因?yàn)殚_發(fā)過(guò)于自信,沒(méi)有通知測(cè)試,直接發(fā)布到外網(wǎng),導(dǎo)致外發(fā)版幾萬(wàn)用戶的手機(jī)崩潰,造成了一場(chǎng)工作事故。
雖然后期查明是因?yàn)槌绦騿T的疏忽導(dǎo)致的參數(shù)錯(cuò)誤,但是依舊暴露出很多流程上的問(wèn)題,特別是凸顯了測(cè)試的重要性。今天就帶大家認(rèn)識(shí)一下低調(diào)的測(cè)試工程師。
測(cè)試工程師
測(cè)試是產(chǎn)品上線環(huán)節(jié)中重要的一部分,伴隨著整個(gè)產(chǎn)品的生命周期,因此產(chǎn)品測(cè)試是很重要的一個(gè)環(huán)節(jié),需要特殊的人員從事相關(guān)測(cè)試工作,這部分人就是測(cè)試工程師。
目前所有的互聯(lián)網(wǎng)公司都有測(cè)試工程師。測(cè)試工程師是產(chǎn)品上線的最后一環(huán),對(duì)用戶負(fù)責(zé),是“上帝”的品菜師,他們的定位是產(chǎn)品把關(guān)者。
主要職責(zé):
測(cè)試工程師的主要職責(zé)分以下幾部分:
1.編寫測(cè)試計(jì)劃、規(guī)劃詳細(xì)的測(cè)試方案、編寫測(cè)試用例。
2. 根據(jù)測(cè)試計(jì)劃搭建和維護(hù)測(cè)試環(huán)境;
3. 執(zhí)行測(cè)試工作,提交測(cè)試報(bào)告。包括編寫用于測(cè)試的自動(dòng)測(cè)試腳本,完整地記錄測(cè)試結(jié)果,編寫完整的測(cè)試報(bào)告等相關(guān)的技術(shù)文檔,;
4.對(duì)測(cè)試中發(fā)現(xiàn)的問(wèn)題進(jìn)行詳細(xì)分析和準(zhǔn)確定位,與開發(fā)人員討論缺陷解決方案。
5.提出對(duì)產(chǎn)品的進(jìn)一步改進(jìn)的建議,并評(píng)估改進(jìn)方案是否合理;對(duì)測(cè)試結(jié)果進(jìn)行總結(jié)與統(tǒng)計(jì)分析,對(duì)測(cè)試進(jìn)行跟蹤,并提出反饋意見。
6.為業(yè)務(wù)部門提供相應(yīng)技術(shù)支持,確保軟件質(zhì)量指標(biāo)。
從測(cè)試工程師(以下簡(jiǎn)稱測(cè)試)的職能定義來(lái)看,優(yōu)秀的測(cè)試工程師,一定是半個(gè)產(chǎn)品+半個(gè)開發(fā)。既要求對(duì)產(chǎn)品足夠了解,包括內(nèi)部邏輯和界面顯示,這也是產(chǎn)品測(cè)試的基礎(chǔ);也要了解部分開發(fā)代碼,能夠?qū)Υa優(yōu)差做出評(píng)估,并且給開發(fā)提供優(yōu)化方案。整體來(lái)說(shuō),測(cè)試要求掌握的技能比較寬泛,從基礎(chǔ)的編寫自動(dòng)測(cè)試腳本程序,到進(jìn)一步拓展編程語(yǔ)言、操作系統(tǒng)、網(wǎng)絡(luò)與數(shù)據(jù)庫(kù)方面的技能。
隨著技能的提升和經(jīng)驗(yàn)的積累,測(cè)試屬于越來(lái)越吃香的職業(yè),優(yōu)秀的測(cè)試人員能夠?qū)?wèn)題消滅在產(chǎn)品開發(fā)階段,極大的節(jié)省開發(fā)成本和后期維護(hù)成本。
測(cè)試方法
從思維出發(fā)點(diǎn)來(lái)說(shuō),測(cè)試主要可以分為兩類:黑盒測(cè)試和白盒測(cè)試。
黑盒測(cè)試(基礎(chǔ)功能測(cè)試)
黑盒測(cè)試也稱功能測(cè)試,它是通過(guò)測(cè)試來(lái)檢測(cè)每個(gè)功能是否都能正常使用。在測(cè)試中,把程序看作一個(gè)不能打開的黑盒子,在完全不考慮程序內(nèi)部結(jié)構(gòu)和內(nèi)部特性的情況下,在程序接口進(jìn)行測(cè)試,它只檢查程序功能是否按照需求規(guī)格說(shuō)明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)而產(chǎn)生正確的輸出信息。黑盒測(cè)試著眼于程序外部結(jié)構(gòu),不考慮內(nèi)部邏輯結(jié)構(gòu),主要針對(duì)軟件界面和軟件功能進(jìn)行測(cè)試。
具體的黑盒測(cè)試方法包括等價(jià)類劃分法、邊界值分析法、錯(cuò)誤推測(cè)法、因果圖法、判定表驅(qū)動(dòng)法、正交試驗(yàn)設(shè)計(jì)法、功能圖法、場(chǎng)景法等。其中常用的黑盒測(cè)試防范有等價(jià)類劃分法、錯(cuò)誤推測(cè)法和因果圖法。
1、等價(jià)類劃分法:
等價(jià)類劃分法假設(shè)各部分是獨(dú)立且同等重要,將一個(gè)產(chǎn)品拆分成若干個(gè)部分,每個(gè)部分有一名負(fù)責(zé)人進(jìn)行測(cè)試。比如我們的項(xiàng)目就是用的是此類測(cè)試方法,將產(chǎn)品分為通知提示、帳號(hào)授權(quán)、流量領(lǐng)取、高速使用和帳號(hào)解綁等流程,每一部分有一名測(cè)試同事負(fù)責(zé),保證該部分功能的正常。
2、錯(cuò)誤推測(cè)法
錯(cuò)誤推測(cè)法是基于經(jīng)驗(yàn)和直覺推測(cè)程序中所有可能存在的各種錯(cuò)誤,從而有針對(duì)性的設(shè)計(jì)測(cè)試用例的方法。
一些經(jīng)驗(yàn)豐富的測(cè)試在進(jìn)行項(xiàng)目驗(yàn)收的時(shí)候,通常采用此方法,針對(duì)容易出錯(cuò)的節(jié)點(diǎn)進(jìn)行重點(diǎn)測(cè)試。如一些支付應(yīng)用軟件的授權(quán)和支付會(huì)成為支付的關(guān)鍵節(jié)點(diǎn)。
3、因果圖法
前面的等價(jià)類劃分法和錯(cuò)誤推測(cè)法都注重節(jié)點(diǎn)的測(cè)試,未考慮條件之間的關(guān)系,各個(gè)步驟直接的結(jié)合情況。因果圖法
是按照前置條件、結(jié)果和后置條件的流程關(guān)系列出所有的條件組合,進(jìn)行測(cè)試。所有的條件組合就是因果圖法的測(cè)試用例。比如登錄—用戶名錯(cuò)誤——返回“用戶名錯(cuò)誤”提醒,就是一條因果圖法的測(cè)試用例。
值得注意的時(shí),各種不同的測(cè)試方法通常是相互交叉使用,比如在使用等價(jià)類型分法的基礎(chǔ)上,對(duì)各個(gè)部分進(jìn)行因果圖法,在各個(gè)部分的連接處做錯(cuò)誤推測(cè)法重點(diǎn)測(cè)試。
白盒測(cè)試(內(nèi)部邏輯測(cè)試)
白盒測(cè)試又稱結(jié)構(gòu)測(cè)試、透明盒測(cè)試、邏輯驅(qū)動(dòng)測(cè)試或基于代碼的測(cè)試。白盒測(cè)試是一種測(cè)試用例設(shè)計(jì)方法,盒子指的是被測(cè)試的軟件,白盒指的是盒子是可視的,你清楚盒子內(nèi)部的東西以及里面是如何運(yùn)作的。"白盒"法全面了解程序內(nèi)部邏輯結(jié)構(gòu)、對(duì)所有邏輯路徑進(jìn)行測(cè)試。這一方法是把測(cè)試對(duì)象看作一個(gè)打開的盒子,測(cè)試人員依據(jù)程序內(nèi)部邏輯結(jié)構(gòu)相關(guān)信息,設(shè)計(jì)或選擇測(cè)試用例,對(duì)程序所有邏輯路徑進(jìn)行測(cè)試,通過(guò)在不同點(diǎn)檢查程序的狀態(tài),確定實(shí)際的狀態(tài)是否與預(yù)期的狀態(tài)一致.白盒測(cè)試一般需要技術(shù)基礎(chǔ)支持,同時(shí)需要相關(guān)工具配合,比如日志抓去工具。
白盒測(cè)試的測(cè)試方法有代碼檢查法、靜態(tài)結(jié)構(gòu)分析法、靜態(tài)質(zhì)量度量法、邏輯覆蓋法、基本路徑測(cè)試法、域測(cè)試、符號(hào)測(cè)試、路徑覆蓋和程序變異。其中一基本路徑測(cè)試法使用最為廣泛。
1、基本路徑測(cè)試方法
基本路徑測(cè)試法是在程序控制流圖的基礎(chǔ)上,通過(guò)分析控制構(gòu)造的環(huán)路復(fù)雜性,導(dǎo)出基本可執(zhí)行路徑集合,從而設(shè)計(jì)測(cè)試用例的方法,同黑盒測(cè)試中因果圖法類似。
測(cè)試用例
對(duì)測(cè)試工程師來(lái)說(shuō),測(cè)試用例是產(chǎn)品測(cè)試的核心。測(cè)試用例是對(duì)所有的界面顯示、交互效果和功能邏輯匯總。目的是能夠?qū)④浖y(cè)試的行為轉(zhuǎn)化成可管理的模式,同時(shí)測(cè)試用例也是將測(cè)試具體量化的方法之一,不同類別的軟件,測(cè)試用例是不同的。一些大型項(xiàng)目,測(cè)試用例能達(dá)到幾萬(wàn)條的數(shù)目。
測(cè)試用例的多少和產(chǎn)品質(zhì)量的“堅(jiān)挺”程度相關(guān),一般情況下,測(cè)試用例越多越細(xì)致,對(duì)應(yīng)產(chǎn)品邏輯會(huì)越縝密,在上線之后越能經(jīng)得起各式各樣環(huán)境的考驗(yàn),對(duì)用戶來(lái)說(shuō),產(chǎn)品的可用度就越高,產(chǎn)品質(zhì)量就越堅(jiān)挺。
結(jié)語(yǔ)
最后,當(dāng)我們?cè)谡{(diào)戲產(chǎn)品狗、程序猿的時(shí)候,不要忘記你身邊的“測(cè)試貓”,他們縝密而低調(diào),忍耐而細(xì)心,專業(yè)的扮演好產(chǎn)品上線管家的角色。毫不夸張的說(shuō),每一個(gè)成功的產(chǎn)品背后都有一名偉大的測(cè)試工程師。
------------------
作者:無(wú)邪(迅雷產(chǎn)品經(jīng)理),微信:devillnote