測試執行通常都是處于軟件測試生命周期的關鍵路徑上,它不僅在測試過程中占有重要的地位,并且也會花費大量的測試時間。針對測試執行而進行的計劃,即測試執行進度計劃,是進行測試執行進度控制的基礎。在進行測試執行進度計劃制訂的時候,需要考慮哪些因素會影響測試執行活動,以及如何針對不同類型的測試人員,進行測試執行進度計劃的調整。
在實際的軟件測試過程中,測試資源、測試質量、測試時間之間是相互制約的。測試執行進度計劃的制訂,需要在這三者之間進行平衡。例如:假如項目產品發布的時間是確定的,或者根據市場或客戶的需求是受到限制的,那么在有限的時間內,需要在有限的測試人力資源和其他的測試資源與測試質量之間進行來平衡,即測試執行進度計劃的制訂,需要我們在有限的測試時間內,利用現有的測試資源,達到既定的測試質量。
根據筆者在軟件測試行業中多年的測試經驗和測試管理方面的一些理解,在制訂測試執行進度計劃的時候,至少需要考慮下面的這些因素:過程的成熟度、測試的時間范圍、測試的資源、產品的質量、測試的文檔等。
1 過程成熟度
首先,影響測試執行進度計劃制訂的因素是組織的過程成熟度,包括開發過程的成熟度和測試過程的成熟度。軟件產品的質量需要通過整個軟件開發過程來保證,而不是某個人或者某部分人的職責。因此,組織的過程成熟度,直接會影響測試執行進度計劃的制訂,具體表現在:
開發過程成熟度,直接決定了開發得到的工作產品的質量,比如軟件的需求文檔、設計文檔、代碼等質量。任何軟件工作產品,都可能是我們的測試對象,同時也是我們測試的基礎。這些工作產品的質量,會直接影響我們的測試工作量和測試執行進度計劃的制訂;
測試過程成熟度,決定了主要的測試活動和測試階段,簡單的說,測試執行過程中我們應該做什么。對于測試執行階段,不同的測試過程 成熟度,需要采用的測試活動是不一樣的。例如:有的測試執行明確定義了正式測試執行之前的預測試;而有的測試執行可能更強調回歸測試。而這些因素,也會影響測試執行進度計劃的制訂;
測試過程的成熟度,也會影響測試執行過程中的輸出工作產品,例如:缺陷報告、測試總結報告等。對這些文檔的要求,也需要在測試執行進度計劃中進行考慮。
過程成熟度定義的測試執行相關的度量,例如:測試用例執行的速率(測試用例數目/星期)、測試的有效性(缺陷數目/測試用例)等,它們是進行測試工作量估算的基礎,因此在測試執行進度計劃制訂中需要謹慎考慮。
2 測試的時間
其次,測試時間是制訂測試執行進度計劃的基礎。這里的測試時間,指的是測試執行需要在什么測試時間范圍之內完成。在有的項目測試執行過程中,軟件測試執行的截至時間是確定的,例如:軟件產品必須在2007-12-31之前交付給客戶,所有的測試活動都必須在這個時間之前完成。在這種情況下,測試的時間范圍已經無法進行選擇,我們必須在測試資源、測試質量和測試范圍等方面進行平衡。
3 測試的規模
第三,在制訂測試執行進度計劃的時候,需要詳細考慮測試對象的規模。測試對象的規模是我們進行測試工作量估算的基礎,這同樣適合測試執行的測試任務。針對測試執行的測試規模,可以從下面幾個方面進行考慮:
測試執行過程中需要執行的新設計的測試用例的數目;
測試執行過程中需要執行的回歸測試用例數目;
測試對象中可能存在的缺陷數目,以及針對這些缺陷可能需要進行的回歸測試;
測試用例的執行是針對多種不同的測試平臺,還是只針對一種測試平臺;
4 測試的資源
第四,在確定了測試時間和測試規模以后,接下來需要考慮測試執行涉及的測試資源問題。測試資源的范圍很廣,包括測試人力資源、測試儀表、測試平臺等。
測試執行活動需要有合適的測試人員來完成。根據組織內已經定義的相關度量或者項目組成員以前的經驗值,和估算的測試規模大小,來確定需要的測試人員數目;
測試執行過程中需要的測試平臺數目和已有測試平臺數目。假如測試平臺數目無法滿足測試執行的要求,需要在測試執行進度計劃中體現,因為這很可能需要測試時間來解決這個問題;
測試執行過程中需要使用的測試儀表和已有的測試儀表。和測試平臺一樣,也需要在測試執行進度計劃中體現,并提供合適的解決方案;
5 產品的質量
我們在前面的“過程成熟度”部分,已經涉及到了測試文檔和測試對象的質量問題。這里,我們將更加詳細的討論它們是如何影響測試執行進度計劃的制訂:
開發文檔的質量:是指在開發過程中輸出的文檔質量,比如軟件需求文檔、概要設計文檔、詳細設計文檔等。由于這些開發文檔是測試設計的基礎,同時設計得到的測試相關文檔是測試執行的基礎,它們將直接影響測試執行的效率和有效性;
測試文檔的質量:一方面開發文檔的質量會影響測試文檔的質量,另一方面,測試人員的技能水平和在項目相關領域的背景知識等,都會影響測試文檔的質量,從而影響測試執行的效率和有效性;
軟件代碼的質量:開發文檔的質量和開發人員的技能、知識水平能力會影響軟件代碼的質量。而軟件代碼是我們測試執行運行的真正的對象,它的質量高低直接影響了測試執行進度計劃的制訂。比如由于測試對象質量很差,導致測試執行并不是原來計劃中的一次,而需要進行多輪的測試;
測試執行對象中可能存在的缺陷數目以及后續的回歸測試,它們在測試執行進度計劃制訂過程中經常容易被忽視。測試執行過程中發現的缺陷,在修改完成以后,需要測試人員進行驗證測試和相關的回歸測試;
假如在測試執行進度計劃中沒有考慮這些質量因素,常常會導致測試后期的測試任務非常繁重,從而影響測試執行的效率和測試質量。
6 測試的文檔
測試執行過程和測試執行完成之后,都需要需要輸出一些測試相關的文檔,比如測試過程中需要提交的缺陷報告、測試執行結束之后提交的測試總結報告和測試版本發布報告等,這些文檔都需要測試人員花費時間和工作量來完成:
原文轉自:http://www.anti-gravitydesign.com