資源描述:
《如何選擇嵌入式白盒測試工具》由會員上傳分享,免費在線閱讀,更多相關內容在工程資料-天天文庫。
1、如何選擇嵌入式白盒測試工具恩格斯說“勞動從制造工具開始”,人和動物的木質區(qū)別是:人會制造與使用工具。IT產品研發(fā)也從選擇合適的工具開始,工貝好壞對項忖成敗往往起著關鍵作用,尤其是嵌入式領域的白盒測試工具選型。盡管業(yè)界已有眾多商用工具,但大部分仍處于可將H盒測試推動起來的邊緣狀態(tài),選擇工具稍有不慎,就導致白盒測試整體做不起來,授終嚴重影響推向市場的產品質量。先澄清兩個概念在分析如何進行工具選型之前,我們先剖析詼入式軟件,當前狀況下影響白盒測試開展的最主要障礙是什么?然后才推導嵌入武軟件白盒測試工具選型應遵循的評估模熨。先澄淸兩個概念,其一,在
2、嵌入式研發(fā)領域,影響白盒測試推行的最主要障礙是工具的使用效率,或者說借助測試工具,你要花多長時間才將單元測試與集成測試做完整。在《企業(yè)如何推行白盒測試》一文中,我們介紹了白盒測試的分區(qū)推動理論,如下圖:測試同比曲線反映了測試工具的使用效率,測試效率越高,該指標取值就越高。如果測試效率偏低,測試同比小于2/3(大致是每寫2天代碼要3天才能測完整)是強制推動區(qū),這個區(qū)域對于絕大多數企業(yè)來說,白盒測試作為一項組織行為注定要失敗I何測試效率夠高,測試同比超過3/2(大致是每寫3天代碼2天就測完整)是自發(fā)推動區(qū),口盒測試即使沒有相關流程推動,研發(fā)人員
3、也能自覺、自發(fā)的實施起來。所以,選擇測試工具至少要求使用它的效率應保證測試同比大于1,測試同比為1是個拐點,即每寫一天代碼只用一天就測完整,請注意,我這里講的是“測完整”,不是簡單的比劃幾下,而是用例總量、覆蓋率等都達到一定的指標,另外強調“每寫一天代碼”,指的是代碼每次改動,都冇白盒測試跟進,I佃不是一次性編碼、一次性測試,如果是一次性測試,相信多數商用工具都能超越拐點,但保證整個產品周期都做到這一點,就很難了。目前適用做嵌入式白盒測試的商用工具屮,大多數都沒達到該要求,所以,多數情況下必需有良好的組織,有強有力的流程推動,白盒測試才做得
4、起來。另一個概念,嵌入式產品面對復雜的運行環(huán)境,形形色色的實時系統、編譯器與設備驅動,都導致白盒測試困難重重,但白盒測試必須要到實際運行環(huán)境中去做嗎?未必,也不應該這樣推崇。《實施白盒測試的兒個誤區(qū)》一文己冇詳細分析,嵌入式軟件應在仿真機環(huán)境實施白盒測試,“上真實環(huán)境做代碼級測試”實際上是個偽命題,實踐中很難行得通,或者說,行得通但代價太高,遠沒突破前面所提的效率拐點,所以,在各種條件受限的實時環(huán)境下做白盒測試,還不能將它上升到過程有保障的組織行為。嵌入白盒工具的評估模型評估一個測試工具的好壞,采用評估標準不同,所站的角度不同,評估結果大相
5、徑庭。所謂每個人的心中都有桿稱,讓測試人員選工具,他會站在測試的角度去選擇,會更注重白盒測試能做得下去,Z后才有興趣深入去做,如果讓質量人員去選,他會側重于質量保障壞節(jié),比如非常看重覆蓋率評估、測試報告提交等,但如果讓企業(yè)老板選工具,恐怕他首先考慮的是這個工具的價格。所以,測試工具的選型過程,必然是各種I大I素綜合考慮的權衡過程。進行公止的工具選型首要問題是:如何選擇評估要素并賦予不同的權重,套用一句規(guī)范術語,我們先建模,確定評估模型,再按條目打分作決策。建立評估模型應考慮如下幾個因素:1.應用范圍首先明確你期塑引入某工貝?的應用范圍,這個
6、業(yè)務范圍內都有哪兒類利益相關人,然厲確定評估項H,為各評估項分配權匝。如果不明確工具適用的業(yè)務范圍,或確定范圍不恰當,肯定會影響評估的準確性,比如你希望某個白盒測試工貝,既支持單元測試,乂支持集成測試,這是一種想法,如果把它換成:想要一個能支持單元測試的工具就夠了。這兩種H的故終的評估結果肯定很不一樣,還有,應關注適用范圍的條件限定,比如,你想要一款既支持C,乂支持C++的測試工具,或限定要支持某特定編譯器(如GCC)的。期望工具的適用范用不僅要明確,還耍合理,比如:你期望一款既支持白盒測試,又支持功能測試,另外還支持性能測試的工具,最后的
7、選型結論肯定會讓你失望,沒有這種萬能工具。確定適用范圍后就可以分析利益相關人,比如你選擇單元測試工貝,重點是考慮編碼人員的需求(注:單元測試的主體應山編碼者自己承擔,這是另一個話題,木文不展開),而你要的工具既支持單元測試,乂支持集成測試,就不能不考慮測試人員的提議了。2.合理選擇評估項目,分配不同的權重上而講到先確定應用范圍,由應用范圍確定相關人后,選擇評估要素就容易明確下來了,最簡單的方法是:把相關人叫過來,讓他們一條一條的說出他關心哪些問題,把這些問題排個序。當然,叫相關人員過來討論并非必須,如果評估者對各個適用領威都很熟悉,他詁在各
8、個利益相關人的角度細想一遍也行。需要注意兩點,一是不要漏掉相關人,比如想買一款性能測試工具,老板也是利益相關人,不站在他的角度考慮問題,中購單可能得不到批準,比如眼下公司的現金流