軟件缺少兼容性測試 筑堤千里功虧一簣[1] 性能測試工具
時間過得很快,這周一直在忙于項目的測試。在周日終于能放松一下心情,我在家看了一個久違的電視節目,電視采訪了一個世界性金融投資人,問他對總裁有什么要求。他說,要求很簡單,就是能夠和任何人合作。其實任何事物和人都一樣,除了自身的完善還需要提高和外界的兼容性,也就是“我去適應環境,而不是讓環境適應我”。
這讓我想起了軟件測試中的兼容性測試也是這樣要求的。無論一個軟件的功能多么強大或者高效,如果和目前常見的軟件有沖突,或者和操作系統有沖突,那么它還是沒有任何價值的,只會被市場所淘汰。
軟件兼容性與軟件兼容性測試
(1)什么是軟件兼容性
很多東西都可以和平共處,巧克力和花生就是一個很好的例子,如果你喜歡吃花生巧克力糖的話。但是,我們也知道水和油就不相容。在我們用心創建一個復雜的大型應用軟件時,開發人員必須要非常努力使所開發的軟件能在預期的各種環境中運行,避免不兼容的情況出現。但隨著軟件開發的復雜性,不同的平臺,不同的應用軟件的多樣化,還有不同軟件的實現方法的多樣化,不可預見的情況越來越多,避免軟件不兼容的情況也變得越來越困難。
一般來說,兼容性指能同時容納多個方面,例如你能和朋友們友好相處,那是相互能兼容,如果相互間相處非常默契,就是兼容性非常好。同樣道理,在計算機術語上兼容是指幾個硬件之間、幾個軟件之間或是軟硬件之間的相互配合程度。相對于軟件來說,是指某個軟件能穩定地工作在某操作系統/平臺之中,就說這個軟件對這個操作系統/平臺是兼容的,再就是在多任務操作系統中,幾個同時運行的軟件之間如果能穩定地工作,就說這幾個軟件之間的兼容性好,否則就是兼容性不好。
另一種情況是軟件共享的數據,幾個軟件之間無需復雜的轉換,即能方便地共享相互間的數據,也稱為兼容。因此,軟件兼容性是衡量軟件好壞的一個重要指標。從這個意義上看,軟件兼容性不良就是軟件推廣的最大阻礙,例如在微軟歷史上花費人力財力最多的Vista系統,發布了半年之久依然是叫好不叫座,據說原因之一是軟件兼容性最為用戶所詬病。軟件測試
(2)什么是軟件兼容性測試
隨著軟件逐步被推向市場,被更多的用戶安裝,兼容性問題也日益凸現出來了。理論上任何兩個軟件之間都有沖突的可能,因此軟件的兼容性就成為了衡量軟件好壞的一個重要指標。兼容性測試是指測試軟件在特定的硬件產臺上、不同的應用軟件之間、不同的操作系統平臺上、不同的網絡等環境中是否能很好地運行的測試。簡單的說,兼容性測試是指測試某新開發的軟件在某一特定環境下與各種軟件的協調性,軟件之間能否很好的運作。例如,會不會有相互不良的影響,還有軟件和硬件之間能否發揮很好的效率工作,會不會影響或導致系統的崩潰等。
(3)配置測試和兼容性測試的區別
在我們進行軟件測試時,經常有兩個很容易混淆的兩個概念,這里特別列出來分析一下。配置測試是指驗證在不同的硬件配置和軟件配置下,應用程序能否正常工作。配置測試的目的是保證軟件在其相關的硬件上能夠正常運行,而兼容性測試主要是測試軟件能否與不同的軟件正確協作。
配置測試的核心內容是使用各種硬件來測試軟件的運行情況,一般包括:一是軟件在不同的主機平臺上的運行情況,例如Dell平臺和SUN平臺;二是軟件在不同的組件上的運行情況;三是不同的外設和不同的接口下的運行情況;最后還有不同的可選項的運行情況,例如某些可選擇的不同軟硬件和網絡環境。
而兼容性測試的核心內容:一是測試軟件是否能在不同的操作系統平臺上兼容,或測試軟件是否能在同一操作系統平臺的不同版本上兼容;二是軟件本身能否向前或者向后兼容;三是測試軟件能否與其它相關的軟件兼容;四是數據兼容性測試,主要是指數據能否共享等。所以,配置測試和兼容性測試對軟件開發都比較重要,但它們測試和關注的核心內容是有區別和不同的。
軟件兼容性測試的主要內容
(1)操作系統/平臺兼容性測試
市場上有很多不同的操作系統類型,最常見的有Windows、Unix、Macintosh、Linux等。應用軟件的最終用戶究竟使用哪一種操作系統,取決于用戶系統的配置。這樣,就可能會發生兼容性問題,同一個軟件可能在某些操作系統下能正常運行,但在另外的操作系統下可能會運行失敗。因此,理想的軟件應該具有平臺無關性。
當然,有些軟件只是針對某一系列的操作系統平臺來開發的,不存在跨平臺的需求。但同一操作系統也有多個版本,例如Windows系統也有不同的系列版本號,如Windows 2000 /XP/Vista等,他們之間可能也有許多不同的組件屬性。因此,有些軟件可能需要在不同操作系統平臺上重新編譯才可運行,有些軟件需要重新開發或改動較大才能在不同平臺運行。因此,在軟件發布之前,需要在各種操作系統下對應用軟件進行兼容性測試。
文章來源于領測軟件測試網 http://www.k11sc111.com/