(3)如果在程序的功能說明中含有輸入條件的組合,宜在一開始就用因果圖法,然后再按以上(1)、(2)兩步進行。
單元測試的設計策略稍有不同。因為在為模塊設計程序用例時,可以直接參考模塊的源程序。所以單元測試的策略,總是把白盒法和黑盒法結合運用。具體做法有兩種:
a、先仿照上述步驟用黑盒法提出一組基本的測試用例,然后用白盒法作驗證。如果發現用黑盒法產生的測試用例未能滿足所需的覆蓋標準,就用白盒法增補新的測試用例來滿足它們。覆蓋的標準應該根據模塊的具體情況確定。對可靠性要求較高的模塊,通常要滿足條件組合覆蓋或路徑覆蓋標準。
b、先用白盒法分析模塊的邏輯結構,提出一批測試用例,然后根據模塊的功能用黑盒法進行補充。
三、測試人員組織
人是測試工作中最有價值也是最重要的資源,沒有一個合格的、積極的測試小組,測試就不可能實現。為高質高效地完成測試任務,好的測試工程師應具有如下能力:
1、溝通能力
一名理想的測試者必須能夠同測試涉及到的所有人進行溝通,具有與技術(開發者)和非技術人員(客戶,管理人員)的交流能力。既要可以和用戶談得來,又能同開發人員說得上話,不幸的是這兩類人沒有共同語言。和用戶談話的重點必須放在系統可以正確地處理什么和不可以處理什么上。而和開發者談相同的信息時,就必須將這些活重新組織以另一種方式表達出來,測試小組的成員必須能夠同等地同用戶和開發者溝通。
2、技術能力
就總體言,開發人員對那些不懂技術的人持一種輕視的態度。一旦測試小組的某個成員作出了一個錯誤的斷定,那么他們的可信度就會立刻被傳揚了出去。一個測試者必須既明白被測軟件系統的概念又要會使用工程中的那些工具。要做到這一點需要有幾年以上的編程經驗,前期的開發經驗可以幫助對軟件開發過程有較深入的理解,從開發人員的角度正確的評價測試者,簡化自動測試工具編程的學習曲線。
3、自信心
開發者指責測試者出了錯是常有的事,測試者必須對自己的觀點有足夠的自信心。如果容許別人對自己指東指西,就不能完成什么更多的事情了。
4、外交能力
當你告訴某人他出了錯時,就必須使用一些外交方法。機智老練和外交手法有助于維護與開發人員的協作關系,測試者在告訴開發者他的軟件有錯誤時,也同樣需要一定的外交手腕。如果采取的方法過于強硬,對測試者來說,在以后和開發部門的合作方面就相當于"贏了戰爭卻輸了戰役"。
5、幽默感
在遇到狡辯的情況下,一個幽默的批評將是很有幫助的。
6、很強的記憶力
一個理想的測試者應該有能力將以前曾經遇到過的類似的錯誤從記憶深處挖掘出來,這一能力在測試過程中的價值是無法衡量的。因為許多新出現的問題和我們已經發現的問題相差無幾。
7、懷疑精神
可以預料,開發者會盡他們最大的努力將所有的錯誤解釋過去。測式者必須聽每個人的說明,但他必須保持懷疑直到他自己看過以后。
8、洞察力
一個好的測試工程師具有"測試是為了破壞"的觀點,捕獲用戶觀點的能力,強烈的質量追求,對細節的關注能力。應用的高風險區的判斷能力以便將有限的測試針對重點環節。
總之,測試是軟件生存周期中的一個關鍵的階段,也是保證軟件質量的重要活動之一。無論怎樣強調軟件測試的重要性和它對軟件可靠性的影響都不過分,面對軟件開發規模的增大、復雜程度的增加,更應高度重視軟件測試工作的組織與管理,以提到軟件質量。
9、自我督促
干測試工作很容易使你變得懶散。只有那些具有自我督促能力的人才能夠使自己每天正常地工作。
文章來源于領測軟件測試網 http://www.kjueaiud.com/