軟體測試工作中碰到的三個問題

shbwf發表於2009-10-09

1、測試資料/執行資料的互不影響

在做軟體測試時,通常都需要生成測試資料,在軟體測試執行完後又要進行測試資料的刪除工作,當軟體測試和執行用的是同一個庫的情況下就很容易出現軟體測試資料和執行資料互相影響的現象,這個時候在寫軟體測試文件的時候就要特別的注意了,既不能讓執行資料影響了測試的結果,又不能讓測試資料影響到了執行資料。

通常來說,為了解決這個問題,會採用測試庫和執行庫分開的方式,採取這種方式的情況下就比較簡單了,不過有些時候還是挺麻煩的,畢竟要建立資料、刪除資料。

還有一種特殊的情況,例如一個這樣的專案:

專案已經上線執行了,這個時候做了一個新的流程,在部署了新的流程到執行環境後,通常需要在執行環境中測試一下,這個時候問題就出現了,測試資料和執行資料並行,這個時候就要充分的考慮測試資料和執行資料的互不影響。

當然,上面的專案的情況是一個比較特殊的情況,就像有些朋友說的,專案規劃的好的話是會有測試環境和執行環境的不同的,測試環境需要和執行環境完全一致,在有新增的東西需要部署到執行環境時先在測試環境進行測試,測試沒問題後再通過升級指令碼部署到執行環境中。

這些方法確實是可以解決測試資料/執行資料的互相影響的問題,不過覺得還是有些的麻煩,覺得如果有一個工具可以幫忙避免測試資料/執行資料的互相影響,同時又可以讓你在寫測試的時候很容易的建立測試資料,又不用擔心其他測試資料或執行資料對它造成影響,最後測試資料又可以安全的被清除,^_^,有個這樣的工具就好了.........

或者說大家在實際中碰到測試資料/執行資料並行的情況下會怎麼辦呢?……

2、單元測試

一直以來都實行TDD,不過發現我做單元測試的方法仍然不正確,儘管在測試的基本原則——“測試一定情況下單元的執行是否和預期一致”上是正確的,但進行單元測試的方法並不正確,就像有的朋友所說,我做的是整合測試,因為我做單元測試時會去把該單元依賴的其他的物件所需要的東西也去進行模擬,這樣說起來可能過於生澀了,舉個例子吧:

有一個服務類,該服務類依賴一個Dao類,通過Dao從資料庫中獲取相關的資訊後進行處理,我以前做單元測試的做法就是首先產生出測試資料,由Dao先將測試資料進行持久,之後再通過呼叫服務類的方法去執行,“一定的情況”通常都是由測試資料來控制,這點沒什麼不對,就是控制所測試的單元的輸入。

本文轉載自51Testing軟體測試網(檢視全文):http://www.51testing.com/html/71/n-112971.html

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11323760/viewspace-1027659/,如需轉載,請註明出處,否則將追究法律責任。

相關文章