可安裝性測試(Installing Testing)是確保該軟件在正常情況和異常情況的不同條件下(正常情況如進行首次安裝、升級、完整的或自定義的安裝,異常情況包括磁盤空間不足、缺少目錄創建權限等),軟件是否能正確地被安裝和使用。可安裝性測試包括測試安裝代碼以及安裝說明手冊。安裝說明手冊是指導如何安裝系統,安裝代碼提供安裝程序能夠運行的基礎數據。
軟件的可安裝性測試應該考慮以下幾個方面:
(1)整個安裝過程測試;
(2)不同環境下的安裝;
(3)系統升級測試;
(4)安裝的文件存放;
(5)卸載測試;
一、安裝過程測試
安裝過程測試主要是指按照安裝嚮導能否正確地安裝好系統,需要注意在安裝過程中測試工程師應該完全以一個不懂計算機的用戶的心態來進行安裝,因為系統用戶可能對計算機完全不瞭解,而一個好的安裝過程是不管客戶懂不懂計算機,都可以順利地將系統安裝好。
關於安裝過程是的測試一般從以下幾個方面進行:
(1)安裝文檔是否寫得正確、清晰。
(2)安裝過程是否易操作。
(3)是否涉及到第三方程序的安裝。
(4)安裝是否涉及到操作系統權限。
(5)安裝文件是否使用絕對路徑。
(6)修改安裝路徑後是否涉及環境變量。
(7)測試不同磁盤剩餘容量的情況和在不同系統盤下進行安裝的情況。
(8)不同分區情況的安裝(如系統盤中只有一個C 盤,在國外經常出現系統只有一個C 盤的情況)。
(9)安裝時是否修改了啟動項。
(10)安裝時是否涉及到註冊表的讀寫。
(11)是否需要註冊服務。
(12)未卸載重新安裝。
二、不同環境下的安裝
測試系統可安裝時最大的一個難點是,在不同環境下測試系統是否能被正確地安裝。因為客戶端可能出現各種不同的環境,但在測試過程中又很難去模擬,這樣就可能出現,在測試過程中沒有問題,但客戶卻投訴系統無法安裝。
一般從以下幾個方面進行不同環境的安裝測試:
(1)乾淨的系統環境安裝。
(2)不同操作系統及補丁的影響。
(3)公用的客戶端文件。
(4)不同網段的通信設置。
(5)同一企業不同軟件佔用目錄結構是否一致。
三、系統升級測試
系統升級測試是指測試系統是否能被正確地升級,它包含兩個方面的內容,一是升級後系統的功能是否被正確地升級;二是升級的方式。有一些讀者朋友可能不明白為什麼要測試升級的方式,在使用軟件時一定是直接卸載現有的軟件再更新新的版本,或者直接在舊版本的基礎上升級,但是供應商就不得不考慮如何幫助客戶升級軟件,而不同的升級方式顯然帶來的成本是不一樣的,而軟件升級方式無非包括以下三種:
(1)提供網絡安裝包的下載,由客戶自己下載安裝。
(2)網絡在線升級。
(3)技術支持工程師現場升級。
顯然作為企業來說,不希望派技術支持工程師進行現場升級安裝,這種升級方式花費的成本最
高,而網絡在線升級是最好的方式。
對於升級測試的場景,客戶端可能出現以下兩種情況:
(1)並未將舊版本的軟件卸載,而直接安裝新版本的軟件,這也是我們通常說的修復或修改
升級。
(2)先將舊版本的軟件卸載,再安裝新版本的軟件。
一般從以下幾個方面進行軟件升級測試:
(1)是否提供網絡安裝包的下載。
(2)是否支持網絡在線升級。
(3)是否通過補丁升級。
(4)升級安裝的目錄選擇。
(5)升級後的功能是否與需求說明書一致。
(6)升級模塊的功能是否與需求說明書一致。
(7)升級安裝意外情況的測試(如死機、斷電等)。
(8)不同系統間的升級測試。
四、安裝的文件存放
安裝時文件存放的測試,是指安裝過程中對生成文件的位置和文件的內容是否正確對待。為什麼要對安裝時產生的文件進行測試呢?其實,安裝成功是可以直觀看到的,但是,不能保證系統在客戶端的環境就能被正確地安裝,因此,必須挖掘出其中一些隱藏的信息,這樣才可以更好地保證系統在客戶端能被正確地安裝好,而這些隱藏信息便是安裝過程中產生的文件及其內容。
在測試過程中,必須讓開發工程師寫清楚軟件整個安裝過程中會生成哪些文件、修改了哪些文件,測試時必須注意在不同操作系統下生成這些文件的情況,不同的操作系統可能因為權限問題導致生成的文件有所不同。
同時還需要注意的是,對系統的一些文件、註冊表修改的情況,以及安裝時生成的文件內容是否正確。
關於軟件安裝時生成文件,一般從以下幾個方面進行測試:
(1)生成的文件是否完整(不能多也不能少,並且不能產生臨時文件或臨時源代碼)。
(2)生成文件的路徑是否正確。
(3)顯示的版本是否正確。
(4)對於C/S 模型的系統配置文件是否安全。
五、卸載測試
卸載測試是指對已安裝好的軟件進行卸載操作,測試卸載是否正確。判斷軟件被正確卸載需要從以下四個方面進行:
(1)桌面快捷方式被刪除。
(2)開始菜單的所有程序中,該程序被正確地刪除。
(3)控制面板中的添加與刪除程序中該程序不存在。
(4)安裝時生成的文件被正確地刪除。
一般從以下幾個方面進行卸載測試:
(1)通過安裝是否可以正確卸載。
(2)通過自帶的卸載程序是否可以正確卸載。
(3)通過系統控制面板中的添加與刪除程序是否可以正確卸載。
(4)升級後是否可以正確卸載。
(5)安裝插件後是否可以正確卸載。
(6)卸載過程中是否可以取消卸載。
(7)如果軟件調用系統文件,卸載軟件時是否有相應的提示。