1. 程式人生 > >如何編寫好的軟體測試用例

如何編寫好的軟體測試用例

1、對於新產品和維護版的老產品設計的用例應該注意些什麼呢?

專家分析:新專案和維護專案從本質上看沒有區別,維護產品,無非就是新增功能和缺陷修復兩大類,和新專案相比,唯一需要注意的就是新增\修復的功能是否對其他部分有影響,這裡就涉及到一個迴歸策略的問題——老功能要測多少。一般來說,需要和開發討論確定受影響的範圍,然後制定測試範圍。當然最理想的情況就是整個系統全測,因為一旦系統複雜了,沒有哪個開發能說清楚影響範圍。

專家建議:“新產品”在瞭解需求的情況下,先設計測試用例,再測試,避免發生遺漏。“老產品”維護,若改變了需求,依然先設計(修改)測試用例,再測試,避免發生遺漏;若專案緊急可先測試,再修改測試用例。

2、做手機應用,流程不像是WEB的那樣清楚,感覺應用除了主功能還有很多零碎的小功能。設計用例時容易遺漏。需要怎麼樣做更好呢。

專家分析:手機應用端測試是最適合應用場景分析方法的,場景設計需要經驗的累積,不是簡單學習知識就行的,建議使用思維導圖,做個有心人,把平時測試的經驗都記錄下來,形成最適合的場景設計方法。

專家建議:手機測試考慮有各種手機的牌子、型號(還有現在的太陽能手機情況下)、停機、沒電、記憶體容量等等。

3、怎樣用簡短的測試用例達到高覆蓋率的測試?並且寫用例時候採用非常清楚的描述好還是採用測試點描述讓測試執行人自行發散測試思維?

專家分析:我們一般不做這樣的考慮,用例需要有合適的顆粒度,並不是說一條用例覆蓋的越多越好,如果一條用例如果顆粒度很大,覆蓋了很多測試點,當前看起來很好,但過幾天你還看得懂這條用例嗎?而往往測試用例數量往往大大超過測試數量。

用例存在的目的,一個是溝通交流,讓其他人能看懂你的測試思路,幫你評審,另一方面也是經驗的累積,最終形成用例庫,所以一定要體現用例設計思路。自行發散測試思維是要不得的,這樣幾年做下來,一點積累都沒有,久而久之在測試界會被淘汰。

4、如何能把黑盒測試做精,做好,對於一些對測試不是特別重視的公司又如何開展較為完善的測試工作?然後黑盒測試必須要向白盒與效能走嗎?

專家分析:可以向公司商議有關測試的重要性。若公司不同意,也儘量採用專業些的測試方法(工具)及bug管理等,便於引起公司的重視和認可。測試人員也要適應這種情況。首先就是了解公司對質量的訴求,比如現階段對效能沒什麼要求,那就集中於將功能測試做好,同時要考慮提升測試的效率,比如自動化測試。在需求確認環節,儘量參與,比如針對每個需求寫驗收標準,然後再和開發一起進行需求討論,把測試工作融入到整個開發過程中,那麼測試的重要性就會和開發並列到一起了。

黑盒測試很難精通,比白盒難得多,白盒測試是測試中最簡單最沒有技術難度的一環。哪個價值大,應該清楚了吧。如果沒有一定的程式碼基礎,不建議你去做白盒。測試最有發展的還是黑盒測試。黑盒測試需要學習的東西很多,比如需求環節的測試需求分析,場景分析,設計階段的用例設計方法,實現階段的測試自動化,DFX測試技術等等。效能測試是很重要的發展通道,其實效能測試也屬於黑盒,效能分析和優化才有點偏白盒。

在國內,功能佔用的比例確實很高,但現在大部分公司的入職要求是要會點效能工具或者自動化工具的。

5、針對做嵌入式開發的公司,作為測試人員,主要需要學習哪些內容?資料庫,自動化測試是否能用到?

專家分析:嵌入式來說,資料庫可能不太會涉及,不過自動化依然很重要。嵌入式軟體可以看做一個黑盒,測試最大的難度在於搭建測試環境,因為你要為這個黑盒搭建好輸入、輸出環境。一般來說,必須掌握最底層的一些知識,像微控制器原理啊,認識晶片那些引腳啊,數轉模啊,還有一些基本的彙編。從我瞭解的嵌入式軟體測試來看,它是最容易實現自動化測試的。

6、黑盒測試可以做多久,應該怎樣規劃黑盒測試的職業生涯?

專家分析:黑盒測試來說其實研究透了,你也非常厲害,像自動化測試、效能測試它們有時候還是需要有些功能測試的功底的。

7、怎樣寫好黑盒測試用例,在不出現冗餘的情況下達到覆蓋面廣?

專家分析:為何會有等價類劃分、邊界值、判定表等等工程方法?就是為了幫助大家寫好用例的。

出現冗餘舉個最簡單的例子:0-100之間取值(整數),可取0、55、100;若再取-1、1、99、101就是冗餘。

8、測試用例是否一定要在測試開始之前寫? 每次寫測試用例都要嚴格按照那些測試策略和方法嗎?

專家分析:首先要知道寫測試用例的目的是什麼?測試每一階段寫的東西都有它的工程目的,放到特定的公司環境中,我們不應該想哪一步可以不做,而是想在這種情況下用哪種做法更有效。比如測試策略,它的主要目的是溝通,它描述了你會怎麼去測,這是你用來和開發以及其他相關人溝通的,如果是我,我就會把它簡化成一張EXCEL表,羅列測試點和測試方法,後面的測試用例也會集中在這張表上,然後再補全。這種建議對這個專案已經非常瞭解或者經驗比較足在專案緊的情況下這麼做。

9、有三年黑盒測試經驗,但是沒有開發經驗,看不懂程式碼,是否只能一直做黑盒? 黑盒測試有什麼樣的發展前景?如果要向白盒,自動化和效能測試發展該如何入手?

專家分析:看不懂程式碼可以慢慢學,其實並不難,看你自己是否有這個決心下這個功夫了。黑盒測試來說其實研究透了,你也非常厲害,像自動化測試、效能測試它們有時候還是需要有些功能測試的功底的。作為研發體系的一員,程式碼功底是必須的,否則沒有發展通路。測試和開發同屬於研發體系,研發體系的通用語言就是程式語言,就像你到國外工作,其他人都說英語,就你只會說中文,雖然別人也能聽懂一二,但是總覺得你是個異類。想要做好測試,不遜色於任何開發人員的程式碼功底是必要的。

白盒:可以到相關測試論壇查閱資料。

自動化:可以看看風過無息、趙旭斌、陳能技三位牛人的書、部落格、視訊。群裡也可以請教下高手,比如熱心腸的超級奶爸等。

效能:可以看看賣燒烤的魚、雲層、於湧兩位牛人的書、部落格。群裡也可以請教下高手,比如熱心腸的超級奶爸等。

白盒、自動化、效能都是需要些開發基礎的。

10、對於較複雜流程的測試用例如何進行測試用例編寫?

專家分析:複雜的測試流程建議先畫個流程圖,再根據流程圖編寫測試用例。