在車(chē)載項目↓→× 開(kāi)發過程中,測試是(shì)關鍵中關鍵的(de)一(y>♠Ωī)環,包括供應商釋放(fàng)每版軟件(ji∞÷♦≤àn)時(shí)的(de)全量測試,也(yě)包括主機(jī)廠(chǎng)的(de)驗收測≤$<¥試。那(nà)針對(duì)測試這(zhè)塊,測試用(yòng)例設計(jì<€)的(de)規範一(yī)般是(shì)怎麽樣呢(ne)?今天一(yī)起來(≤®←lái)探討(tǎo)一(yī)下(xià)。
首先 是(shì)規範測試用(yòng)例的(φ±de)背景是(shì)什(shén)麽呢(ne)?主要(₽€yào)有(yǒu)兩個(gè)維度,首先是(shì)為(wèi)保證測試用(yòng)例對(duì)需求的(de)覆蓋率,第二個(gè)就(jiù)是(shì)對(du<≈ì)單個(gè)功能(néng)點,主要(yào)驗證不(bù)同的(de)輸入及其組合所帶來(lái)的(de)各種輸入動♠$作(zuò),系統輸出是(shì)否合理(lǐ)。
測試用(yòng)例設計(jì)規範的(de)目的($÷de)是(shì)為(wèi)測試用(yòng)例的(de)質量≤負責,使測試能(néng)有(yǒu)序、合理(lǐ)化(huà)的(de)進行(xíng•λ),從(cóng)而提高(gāo)實施測試時(shí)的(de)測試© 質量。
那(nà)下(xià)面就(jiù)來(l δái)仔細聊聊測試用(yòng)例設計(jì)的(de)規範。首先是(shì)一(yī)條測試用(yòng)例要(yào)包含哪些(xiē≠←)內(nèi)容呢(ne)?
01. 編寫用(yòng)例原則
在上(shàng)面對(duì)整體(tǐ)測試規範的(d↓±e)背景和(hé)目的(de)簡單說(shuō)明(míng)後,那(nà)先來(lá♥✔♠¶i)看(kàn)看(kàn)測試用(yòng)例編寫的(de)原則,主要(yào)包括系±♠≈統性,全面性,正确性,可(kě)操作(zuò)性,下(xià)面挨個(∑gè)來(lái)聊聊。
系統性:要(yào)能(néng)完整的(de)說←÷÷λ(shuō)明(míng)整個(gè)系統的(de∑€£π)業(yè)務需求、系統由幾個(gè)子(zǐ)系統組成以及間(jiān)的(de)關系;對(d∏φuì)模塊業(yè)務流程要(yào)說(shuō)明(míng)子(zǐ)系統內(nèi) ☆部功能(néng)、重點功能(néng)以及之間(jiān)的(de)關系;
全面性:應盡可(kě)能(néng)覆蓋各種路(l¶∏πù)徑、盡可(kě)能(néng)覆蓋各個(gè)業(yè)務點;
正确性:輸入界面後的(de)數(shù)據應與測試文(wén)檔所✔™✔÷記錄的(de)數(shù)據一(yī)緻, π♠而預期結果也(yě)應與測試數(shù)據發生(shēng)×↑≠β的(de)業(yè)務吻合。
可(kě)操作(zuò)性:測試用(yòng)例中要(yào)寫清楚測試的(de)操"作(zuò)步驟,以及不(bù)同的(de)操作(zuò)↕↓ 步驟相(xiàng)對(duì)應的(de)測試結♣¶♥果。
02. 編寫用(yòng)例标準
討(tǎo)論完測試用(yòng)例的(de<&®♠)原則後,那(nà)用(yòng)例實際應該怎麽編寫呢(ne),其标準是(shì)什(shén≈↓)麽呢(ne)?首先測試用(yòng)例編寫應該統一(yī)模闆并約定模闆的(de)使用(yòng)方法;其次測試用(yòng)例編寫應當根據實際情況編寫測試用(yòng)例編→π"λ寫手冊,包括用(yòng)例編号規則、編寫方法、維護等內(nèi♦&±♥)容等;然後則是(shì)用(yòng)例編寫應根據手冊中約定的(de)編寫方法、內(nèi)容等進行(xíng)編寫,并且寫要(yào)明(míng)确步驟,輸入輸出要(yào)素清晰,并且與需求和(hé)缺陷相(xiàng)對(π★₽duì)應;最後按照(zhào)用(yòng)例編寫§₩原來(lái)中全面性,用(yòng)例編寫應嚴格根據需求及測試需求功能(néng)分(fēn)析點進行(∞→xíng),要(yào)求覆蓋全部需求功能(néng)點。
最後用(yòng)例編寫要>Ωγ€(yào)注重用(yòng)例的(de)€£可(kě)複用(yòng)性,減少(shǎo)&↕後續類似需求的(de)測試設計(jì)工(gōng)作(zuò)量。
03. 用(yòng)例設計(jì)步驟
'₹↕ 在聊完用(yòng)例原則和(hé)标準後,就(jiù)要(yào)開(kāi)始實操了(÷₽•€le),看(kàn)用(yòng)例設計(jì)的(de₹↔)步驟了(le)。
第一(yī)步&•是(shì)測試需求分(fēn)析:從(cóng)需求分(fēn)析文(wén)≥ 檔中,找出待測的(de)需求點,通(tōn₽ 'g)過分(fēn)析、理(lǐ)解,整理(lǐ)成為(wèi)測試需求,←φ₩要(yào)清楚被測對(duì)象具體(tǐ)包含哪些(x♦&Ωiē)功能(néng)點。
第二©★↑€步則是(shì)業(yè)務流程分(fēn)析:首先要(yào)對(duì)業(yè)務知(zhī)識要(yào)熟悉,然後對(duì)被功能(néng)需求要(yào)進行(xíng)₩∏£全盤的(de)整理(lǐ)出來(lái)。
第三部則是(shì)測試用(yòn₽↕↕&g)例設計(jì):測試用(yòng)例設計(jì)的(de)類型主要(yào)包括功能(néng)測試、邊界測試、異β↑常測試、性能(néng)測試、壓力測試等,在設計(jì)用(yòng)例時(shí)要∞♦π<(yào)盡量考慮邊界、異常等情況。
第四部則是(shì)測試用(♦≠yòng)例評審:由測試用(yòng)例編寫者發起,參加的(de)人(rén)員βγγ(yuán)需包括測試負責人(rén)、項目經理(lǐ)、開(kāi)發人(r¶& ÷én)員(yuán)及其他(tā)相(xiàng)關的(de)測試人(rén)員(yu♠$$án)。
第五步則是(shì)測試用(yòδ₹ng)例完善:測試用(yòng)例編寫完成之後需要(yào)不(bù)斷完善,包括功能(néng)需求叠¶↕γ代,或者是(shì)在軟件(jiàn)交付後客戶反饋的(de)軟件(ji₩àn)缺陷,而缺陷又(yòu)是(shì)因測>™♥試用(yòng)例存在漏洞造成,也(yě)需要(yào)¥≥對(duì)測試用(yòng)例進行(xíng)完善。
04. 用(yòng)例維護
測試用(yòng)例編寫并不(α✔↔÷bù)是(shì)一(yī)次性的(de)工(gōng)作(zuò),後續還(hái)需要'®α (yào)定期的(de)維護測試用(yòng)例,為(wèi)什(shé★£n)麽要(yào)維護呢(ne)?
05. 用(yòng)例設計(jì)方法
06. 用(yòng)例評審
在完成用ε≈ >(yòng)例編寫後,就(jiù)需要(yào)預約會(huì)議(π≤yì),對(duì)用(yòng)例進行(xíng)評審,為(wèi)什(shén)麽需要(yào)評審呢(ne)?主要(yào)是(shì)測試用(yòng)例是(shì)軟件(jiàn)測試的(≈"∏de)原則,但(dàn)由于軟件(jiàn)人(rén)員(yuán)對(d>•uì)在需求理(lǐ)解、設計(jì)等理(lǐ)解程度不(bù)同等因素的(dβ•e)影(yǐng)響,首次産生(shēng)的(de®•∞↔)測試用(yòng)例質量難以避免會(huì)有←©(yǒu)不(bù)同程度的(de)差異☆β,故對(duì)編寫的(de)測試用(yòng)例進行(xín ®g)評審是(shì)很(hěn)有(yǒu)必要(yào)的(d×♦e),其作(zuò)用(yòng)是(shì)測試用(yòng)例的(de)評審過程能↕™←&(néng)夠起到(dào)用(yòng)例結構清ε"晰化(huà)、場(chǎng)景覆蓋全面化(huà)以及優先用(yòng)例的(de$α)合理(lǐ)化(huà)安排等。
評審的(de)內(nèi)容包括用(yòng)例設計(jì)的(de)結構安排是(shì)否ε₽清晰合理(lǐ),是(shì)否高(gāo£¶)效的(de)需求進行(xíng)覆蓋用(yòng)例的(∏ ←δde)優先級别是(shì)否安排合理(lǐ);是(shì)否覆蓋了(le)測試需求的(de)所有(yǒu)功能(néng)點,包括$$✔≥需求中的(de)業(yè)務規則、所有(yǒu)用(yòng)戶可(kě₽ε)能(néng)使用(yòng)的(de)流程或場(≠↔₩chǎng)景等;用(yòng)例是(shì)否有(yǒu)很(hěn)好(hǎo)的(de)可(kě♥")執行(xíng)性。例如(rú)用(yòng)例的(de)前提條件(jiàn)、執行(xíngγ$♥)步驟、輸入數(shù)據和(hé)期待結果是(sh"•$ì)否清晰、正确;是(shì)否已經删除了(le)冗餘的(de)測試用(yòng)例;是(shì)否包含充分(fēn)的(de)負面測試用(yòng)例是(shì<♣←)否簡潔、複用(yòng)性強、是(shì)否易于管理(lǐ)。
那(nà)評審過程是(shì)怎樣的(de)呢(n↑σβe)?基于項目需求的(de)測試計(jì)劃完成之後,進行(xíng)初審©φΩ↑,主要(yào)是(shì)對(duì)測試範圍和(hé)測試要(yào)點進行"®∑∑(xíng)審查在測試用(yòng)例的(de)設計(jì)完成之後進行♣σ(xíng)複審,主要(yào)是(shì)對(duì)測試用(yòng)例的(d©↔e)結構和(hé)覆蓋率進行(xíng)評審所有$β±₹(yǒu)測試用(yòng)例結束後,主要(yào)是€☆☆(shì)對(duì)測試用(yòng)≠€§例的(de)具體(tǐ)描述是(shì)否有(yǒu)很(hěn)好(hǎo)的(d≥↑e)可(kě)執行(xíng)性,是(shì)否≤π÷有(yǒu)冗餘用(yòng)例的(de)存在進行(xíng)評≥★審。
評審之後,經評審的(de)用(yòng)例由用(yò↑ ¥¶ng)例設計(jì)者根據評審的(de)建議(yì)或意見(jiàn)進行(xíng)± 修改,更新用(yòng)例,再次發起評審、修改、更新用(yòngβ•)例,反複評審後,直至用(yòng)例達到(dào)要(yào)求。
在用(yòng)例經過用(yò"♠ng)例評審後,則就(jiù)可(kě)以排計(jì)劃讓測試人(rén)員(yuán)≈≤安排測試了(le)。包括建立測試計(jì)劃;建立對(duì)應的(de)版本追溯;确認測試人(rén)員(yuán),測試報≈(bào)告輸出等。
轉自(zì)汽車(chē)ECU開(kāi)發