軟件兼容性測試
版權聲明:本文為博主原創文章,未經博主允許不得轉載。
下面根據what、why、when、where、who、how (五個W和一個H)及other useful tip來介紹軟件兼容性測試。
什么事軟件兼容性測試(what)?
軟件兼容性測試既是測試被測試軟件能夠與操作系統、網絡環境、瀏覽器、相關其他軟件(包括數據庫)、外接設備等能夠友好合作,不出現UI界面顯示異常、同等分辨率下顯示異常、改變顏色及顯示大小改變、排版出錯、CSS格式及顏色錯誤、滾動條相關問題、內容或者標簽重疊、表格或者框架不完整等等兼容性軟件缺陷。兼容性測試包括向前兼容性測試和向后兼容性測試。
向前兼容性測試(forward compatibility testing):測試的應用程序或軟件在新的或即將到來的版本,並且應用程序的早期版本能夠打開較新版本中的文件並忽略早期版本中未實現的功能。比如USB1.0能夠兼容USB3.0,或者是MS office2003能夠使用轉換器打開MS office2007的文件,並忽略MS office2007 的新功能。
向后兼容性測試(backward compatibility testing):測試的應用程序或者軟件處於舊版本,並且應用程序的新版本能夠順利處理舊版本的程序數據。比如說USB3.0兼容USB1.0,或者MS office 2007能夠打開MS office 2003的文件。
為什么要進行軟件兼容性測試(why)?
從兼容性測試的概念中得知,軟件的運行與操作系統類型及版本(windows、linux、mac等)、瀏覽器種類及版本(IE、火狐、谷歌等)、網絡環境的帶寬、數據庫種類和版本(SQL、DB2、MySQL、Oracle等)、外接設備(打印機、傳真機等)、其他相關軟件(MS office、SharePoint等)等因素有關,那么最終用戶使用的環境我們不得而知,但在資源和時間有限的情況下,我們要盡可能的模擬用戶使用的環境去確保我們的開發軟件能夠正確使用。所以兼容性測試是檢查的是所有平台的應用程序的工作方式。通常開發團隊和測試團隊的測試是在單一平台中進行展開。但是,一旦發布應用程序,客戶可以在不同的平台測試我們的產品,他們可能會發現在應用程序中的錯誤,要減少這些問題,在所有平台上測試應用程序是很重要的。換句話說,當最終的用戶發現了應用程序的缺陷,這需要花費很多時間去開發補丁包去彌補錯誤的后果,但是經常發布產品補丁包會使用戶感覺不安,所以產品的兼容性測試是無可避免的。
什么時候去執行軟件兼容性測試(when)?
當build已經相對穩定的時候就進行兼容性測試。
軟件兼容性測試要測什么(where)?
Instance of browser compatibility testing, to discuss what to test in software compatibility testing.
- CSS and HTML and XHTML Validation
- Page validation
- Font Size and font style Validation
- Special characters with HTML character encoding
- All Image alignment
- Header and Footer
- Page Alignment
- Control Alignment (Bullets, Radio button, Check box should be check on various browser.)
- Page Zoom In and Out should be tested properly
- Verification of information submitted to database
- HTML video format: Video format should be verified, because all browser does not support all format of videos example IE9 give support only to .mp4, while firefox give support to .mp4 and .webm and if we are taking Chrome then it supports almost .mp4, .webm, .ogm and some other video format.
- Text Alignment
- Flash content should be tested
- Pages should be tested while cookies and Javascript of the browser is turned off and page should again be tested when both are on
- Plugins developed by external sites: some jQuery plugins might not work correctly, like print functionalities in IE8 or carousel rotation when playing videos.
- CMS compatibility: be sure to know the browsers that the Content Management System supports and focus mostly on that browser verses other ones.
綜上所述,對於瀏覽器的兼容性測試,我們要驗證的是頁面、字體大小和樣式、特殊字符的編碼、圖像對齊與否、頁面的頭尾、頁面對齊與否、文本對齊與否、控件的對齊情況、頁面的放大放小測試、數據庫提交信息驗證、HTML視頻播放格式驗證、外部網站開發的插件驗證、關閉cookies和javascript后的頁面驗證等。還有其他的驗證內容,可以通過探索性測試中提到的一些方法,進行測試。如破壞測試法,懶漢測試法,一送一測試法,配角測試法,賣點測試法,指南測試法,超模測試法等等,可以將探索性測試用於軟件的兼容性測試,更加有方向的進行兼容性測試。
誰來執行兼容性測試(who)?
測試人員和最終用戶。測試人員只能模擬出大部分用戶使用的環境進行軟件的兼容性測試,盡可能的使大多數的用戶在使用中出現較少的問題,由於時間和資源的有限性,不能夠模擬出所有用戶的環境,所以兼容性測試前期是測試人員進行的大范圍的掃除盲點,加上后期用戶的共同努力,來提升軟件質量。
怎樣執行兼容性測試(how)?
Process of compatibility testing
- Understand the software that you will test.
- Design test plan.
- Execute CT
- Installation testing-BVT passed
- Upgrade testing-BVT passed
- BAT & TAE schedule->rerun->Analyze
- Manual Testing & Exploratory testing
- Test signoff
在執行兼容性測試之前要理解,在什么平台,怎樣的環境,去驗證哪個軟件的兼容性,去根據對軟件以及環境的認識,去制定有測試計划和測試策略的test plan (Test plan中包括了Test Scope, Test Strategy, Hardware, Test Schedule ),引入一些常用的測試方法,如探索性測試,手工測試,自動化測試,冒煙測試等方法,將軟件的兼容性測試做活,不那么生硬,盡可能的找到更多之前沒有發現的bug。 指定完test plan,就是執行這一輪的兼容性測試,配置相應的環境,采用局部自動化測試 + 手工測試的原則,去檢測軟件是否存在兼容性問題,完成這一輪CT,后signoff。
other useful tip
通常情況下的軟件兼容性測試的缺陷(bug)
- Changes in UI ( look and feel)
- Change in font size
- Alignment related issues
- Change in CSS style and color
- Scroll bar related issues
- Content or label overlapping
- Broken tables or Frames
- Inconsistency in Page Layout
- Inconsistency in Grid
- Page Validation not work on certain Browser
- Transaction is not being posted to data-base on clicking submit button or link
- SSL certificate error that has been noticed mainly with lower version of browsers
- Inconsistency in Tab Flow
- Some time pagination error also occurs.
- …….
博主:海寧
聯系:whnsspu@163.com
