這是我購(gòu)買的"極客時(shí)間"上的一套課程的筆記穴翩,總共52講,定期對(duì)其中的內(nèi)容做一筆記痢艺,鞏固學(xué)習(xí)內(nèi)容赘理。
02 如何設(shè)計(jì)一個(gè)"好的"測(cè)試用例
1.好用例的必備特征
- 整體完備性:能夠完全覆蓋測(cè)試需求
- 等價(jià)類劃分的準(zhǔn)確性
- 等價(jià)類集合的完備性:保證所有可能的邊界值和邊界條件都已經(jīng)正確識(shí)別
- 三種最常用的測(cè)試用例設(shè)計(jì)方法
- 等價(jià)類劃分法
- 邊界值分析法
- 錯(cuò)誤推測(cè)法:
比較依賴測(cè)試人員對(duì)被測(cè)軟件的需求理解,個(gè)人能力公壤,以及經(jīng)驗(yàn)换可。它和目前流行的"探索式測(cè)試"的基本思想和理念不謀而合,缺點(diǎn)是難于系統(tǒng)化厦幅,過(guò)度依賴個(gè)人能力沾鳄。
因此,為了降低對(duì)個(gè)人能力的依賴确憨,在中小企業(yè)中經(jīng)常使用建立缺陷知識(shí)庫(kù)的方式译荞,而這種方式最簡(jiǎn)單的實(shí)踐方法就是建立wiki頁(yè)面。在中大型企業(yè)休弃,則會(huì)使用該缺陷知識(shí)庫(kù)作為數(shù)據(jù)驅(qū)動(dòng)測(cè)試的輸入吞歼,來(lái)自動(dòng)生成部分的測(cè)試數(shù)據(jù)。
【心得】
作者所闡述的缺陷知識(shí)庫(kù)這一條塔猾,個(gè)人覺(jué)得很有意義篙骡。雖然最終目的都是一致的,但是對(duì)于不同規(guī)模的企業(yè)丈甸,考慮到具體的投入產(chǎn)出比糯俗,會(huì)有不同的工程實(shí)踐形式:建立wiki頁(yè)面,或者作為自動(dòng)生成測(cè)試數(shù)據(jù)的輸入來(lái)源睦擂。
- 測(cè)試用例本身設(shè)計(jì)的關(guān)鍵點(diǎn)
- 從軟件功能需求出發(fā)得湘,全面地、無(wú)遺漏地識(shí)別出測(cè)試需求
- 對(duì)于識(shí)別出的每個(gè)測(cè)試需求點(diǎn)顿仇,綜合運(yùn)用等價(jià)類劃分淘正、邊界值分析和錯(cuò)誤推測(cè)方法來(lái)全面地設(shè)計(jì)測(cè)試用例
- 用例設(shè)計(jì)的其他經(jīng)驗(yàn)
- 深入理解被測(cè)軟件的架構(gòu):測(cè)試工程師不能把整個(gè)系統(tǒng)看作一個(gè)大黑盒,必須對(duì)內(nèi)部的架構(gòu)有清楚的認(rèn)識(shí)臼闻,比如數(shù)據(jù)庫(kù)連接方式跪帝,數(shù)據(jù)庫(kù)的讀寫分離,消息中間件Kafka的配置些阅、緩存系統(tǒng)的層級(jí)分布伞剑、第三方系統(tǒng)的集成等。
- 深入理解被測(cè)軟件的設(shè)計(jì)與實(shí)現(xiàn)細(xì)節(jié):僅根據(jù)測(cè)試需求點(diǎn)設(shè)計(jì)用例市埋,往往覆蓋不到內(nèi)部的處理流程黎泣、分支處理恕刘。同時(shí),應(yīng)該依據(jù)原始需求設(shè)計(jì)測(cè)試用例抒倚,而不要以開發(fā)代碼的實(shí)現(xiàn)為依據(jù)設(shè)計(jì)褐着。
- 引入需求覆蓋率和代碼覆蓋率來(lái)衡量測(cè)試執(zhí)行的完備性。
【心得】
作者闡述的深入理解被測(cè)軟件的架構(gòu)和設(shè)計(jì)實(shí)現(xiàn)細(xì)節(jié)部分托呕,就需要測(cè)試人員自身?yè)碛熊浖_發(fā)相關(guān)的知識(shí)含蓉,而這部分是不少測(cè)試人員所欠缺的。所以對(duì)于這部分人員项郊,從作者這段話馅扣,也能夠找到自身提升技能的一個(gè)方向,那就是多去了解軟件開發(fā)的知識(shí)着降,對(duì)被測(cè)軟件了解的越多差油,你就能測(cè)試的越好。
關(guān)于應(yīng)該依據(jù)原始需求設(shè)計(jì)測(cè)試用例這一條任洞。在實(shí)踐中蓄喇,測(cè)試人員不能盲目相信開發(fā)人員,因?yàn)殚_發(fā)人員對(duì)原始需求的理解可能就產(chǎn)生了錯(cuò)誤交掏。因此必須從原始需求出發(fā)妆偏。當(dāng)然,這里我想根據(jù)自己的經(jīng)驗(yàn)再補(bǔ)充一條盅弛,那就是楼眷,測(cè)試人員根據(jù)自身對(duì)被測(cè)軟件系統(tǒng)的理解,有時(shí)候也需要指出原始需求本身的問(wèn)題熊尉,因?yàn)樘岢鲂枨蟮娜藛T也可能犯錯(cuò)。