軟件設計測試用例與系統設計的關聯 測試用例設計
呵呵,我覺得要回答這個問題,需要把重點放在兩者的根——需求上。
從根本上來講,設計與測試案例只不過是同一個需求的不同表現形式。設計更多的是從邏輯上表現系統/功能的內部結構,對象間關系,算法或者流程等內容。測試案例則偏重于其設計實現的校驗上。我個人覺得,無論是傳統的開發模式,或是TDD,都無法脫離或背離需求這個根本。
接下來回答樓主的問題。自己覺得:設計測試案例的過程是對需求的解讀和翻譯過程。但不同的是,不同的人,不同的技能等級和系統認知都會對相同的需求產生不同的結果。設計測試案例的過程不能等同于設計過程,尤其是黑盒測試(從細粒度上講)的測試用例。充其量作為系統設計的補充,以完善異常處理,驗證現有實現。所以,我現在反而覺得,所謂設計,只不過是人對系統的一種理解和實現手段,不是最終目標。而相關的人認同或不認同該種手段,而后討論、修訂,最后達成妥協一致,進而實現。所以,我認為設計測試用例的過程不能等同于設計過程,但是卻可以作為設計的中間認知過程。
TDD中實現的不斷集成,不斷測試,先實現測試模塊再進行邏輯編碼,不過是種實現手段,也許開發出來的內容質量會相對更好些,但并不代表非它莫屬,更與測試案例設計過程和及系統設計毫不關系——TDD更多代表一種思想而非具體的實現。更現實點講,實現有很多種方法,過程有很多選擇,我想不必太過執著于哪種形式吧。
文章來源于領測軟件測試網 http://www.kjueaiud.com/