盡早開始測試管理活動
雖然這一點看起來像最顯而易見的建議,但是很少軟件項目真正地應用這一觀念。在早期開始確定測試資源很容易而且很常見,但是許多測試分析(如識別關鍵的、優先的測試用例)可以而且應該盡快開始。一旦用例被充分開發產生事件流,就可以得到測試程序。如果一個項目沒有使用用例需求,那么仍可以從確認初始需求說明中得到測試。盡快開發測試能幫助減輕未來不可避免的時間限制。
迭代化測試
軟件測試應該是一個反復的過程,在整個項目周期的早期生成有價值的測試工件和工作。這是遵循盡早開始測試流程的首要建議:一個迭代的測試流程應該很早就關注測試管理。測試管理通過組織迭代的各類工件和資源來指導這一點。這個基于風險的方法有助于確保以最有效的方式處理項目時間線里可能出現的變更、延遲和其他一些不可預見的障礙。
重用測試工件
在一個項目或多個項目里重用測試工件能夠極大地提高測試團隊的有效性。這樣可以極大地緩解時間和資源有限造成的壓力?梢灾赜玫墓ぜ粌H包括自動操作測試對象,還包括測試程序和其他的計劃信息。為了有效地重用工件,測試管理必須在組織和描述給定項目的與測試相關的各種信息方面做得很好。在創建工件時,重用總是需要一些預先計劃,而且這一原則通?梢詰糜跍y試管理。
使用基于需求的測試
測試可以被分成兩種常用的方法:
確認事情按照計劃進行
盡力找出什么使得事情停止下來
雖然后面的探索性測試對于發現導致錯誤的難以預測的場景或情形來說非常重要,但是確認基本的需求可能是測試團隊執行的最重要的評估。
基于需求的測試是確認一個應用軟件或系統的主要方式,它既適用于傳統需求也適用于用例需求;谛枨蟮臏y試往往沒有探索性測試那么主觀,它也可以帶來其他的益處。軟件開發團隊的其他部分可能質疑或者譴責探索性測試的結果,但是他們不能懷疑直接確認需求的測試。另一個好處是它可以更容易地計算所需的測試工作(與探索性測試相反,它總是受限于可以利用的時間)。
它也可以提供各類統計數據,他們可能是有用的度量,例如測試覆蓋率。測試用例是由需求產生的,并且隨著事情變化對其關系的跟蹤也更為重要,這是一件復雜的工作,應該通過工具進行處理。RequisitePro 和 ClearQuest 中的測試管理能力提供了滿足這一需求的結果方案。
這一流程的局限性是它信賴于一個好的系統需求和一個十分有效的合理的需求管理計劃。從另一方面來說,探索性測試可能更加特殊。它很少依賴軟件開發團隊的其他部分,這有時會導致測試工作很少被關注在確認需求的重要任務上。雖然較好的測試工作應該將不同的方法集成起來,但是不應該忽視基于需求的測試。
協調遠程測試資源
為了避免資源不足或者只是為充分利用人員,您應該協調可以運用的任何資源,不管它們在什么地方。這些重要的資源很可能存在于多種區域,通常在不同的地方。這需要仔細有效的協同合作使得各地區的大多數測試人員和其他人參與到測試管理中。為了使之生效可能有相當多的技術挑戰,因此需要適當的處理。ClearQuest 的 MultiSite 版本的測試管理能力能夠幫助簡化區域分布式測試協調的復雜度。
我應該使用 Web 客戶還是自動復制的數據呢?有兩種解決方案使得相距較遠的參與者能夠協同工作。前者簡單并且相對容易,但是如果從各地進行訪問,仍有網絡方面的潛在約束。對于受到人員或者功能限制的遠程訪問來說,這是一個好的解決方案。但是,對于由許多不同地方的人組成一個測試團隊的情況,您需要具有復制到本地服務器上的數據使得他們的運行速度達到最大化。這也意味著您將需要一個簡單無縫的方式使得每個地方的數據自動同步。這是 ClearQuest MultiSite 對于測試管理來說十分重要的地方。
定義并執行靈活的測試流程
一個好的、可重復的流程能夠幫您了解項目的當前狀態,并通過預測了解其趨勢。盡管如此,不同的項目對測試工作將有不同的特定需要,因此使得工作流程自動化的測試管理流程需要是靈活的并且可以定制的。流程應該是可重復的(為了提供預測),但是更重要的是,它必須允許改進。它必須使得修正十分容易,包括在迭代項目過程中的調整,因此它可以通過改變需要使其達到最優。
如果不能以任何方式執行,那么定義一個指導團隊成員的帶有工作流程的過程意義并不大。需要怎樣的力度來執行根據不同的企業和項目而有所不同。許多企業的軟件項目需要遵循不同的法規,如 SOX 和 HIPPA。有些需要變更審核、項目歷史和其他像電子簽名等嚴格的遵守確認。不管您的項目測試管理需要嚴格地執行流程還是有更多的臨時選擇,您都需要一個機制來定義和執行某些事情。像 ClearQuest 這樣測試管理工具是能夠提供測試管理所需的所有能力。
文章來源于領測軟件測試網 http://www.kjueaiud.com/