本發明涉及瀏覽器兼容性的測試方法技術領域,具體地說是一種基于自動化測試的瀏覽器兼容性測試方法。
背景技術:
瀏覽器兼容性測試,是指在不同的瀏覽器中對目標系統進行測試,發現在頁面展示與功能事件響應上的錯誤。
最常用的方法是矩陣法,橫坐標是選定的不同瀏覽器,縱坐標是選定的測試目標,交叉的部分記錄測試結果。通過人工在不同瀏覽器中完成同樣的操作,以完成測試矩陣。整個過程完全是人工操作,在功能數一定的情況下,工作量隨橫坐標瀏覽器的數量成倍增加,人為因素也影響了測試的準確性。
經查詢專利網,有一條瀏覽器兼容性測試專利,主要實現多瀏覽器同步操作指令。其發明原理是同時打開多個瀏覽器,其中一個是主瀏覽器,人工操作測試過程的同時,操作被轉化為指令,同步到其他瀏覽器,實現對其他瀏覽器的同步。優點是實現了自動化,只需在一個瀏覽器中操作一遍,缺點是需要人工實時的、全程的對所有瀏覽器進行監控,測試目標的每一個頁面變化和功能事件響應還依賴人工判斷,且自動化使得這些變化同步進行,一個人很難在同一時間兼顧到所有瀏覽器,就需要更多的人員參與測試過程,測試效率提升有限,且有局限性。
技術實現要素:
本發明的技術任務是針對以上不足之處,提供一種基于自動化測試的瀏覽器兼容性測試方法,提高瀏覽器兼容性測試的效率和準確性,解決人工操作瀏覽器,人工監控測試過程中人為因素對測試過程的和測試結果的影響。
本發明解決其技術問題所采用的技術方案是:
一種基于自動化測試的瀏覽器兼容性測試方法,將測試過程分為兩個階段,Web功能自動化測試階段和人工看圖階段,。Web功能自動化測試階段實現對多瀏覽器運行過程進行截圖并保存,人工看圖實現了對圖片的自動比對分析,對有差異的圖片再進行人工分析。劃分兩個階段后,分別實現。Web功能自動化測試階段的產出物——屏幕截圖,作為人工看圖階段的輸入,通過截圖作為兩階段連接的橋梁。瀏覽器兼容性的主要表現有兩個,頁面的展示渲染和對事件的響應。基于Web功能自動化測試方法,如果設計的功能測試腳本能正確執行通過,表明事件響應是兼容的。頁面的展示渲染可以通過截圖,對每個頁面及其變化進行截圖,再對圖片進行分析,從而測試頁面展示渲染的兼容性。
一、Web功能自動化測試階段,可采用的現有的Web功能自動化測試方案有很多。如果有適合的方案,不必要自行開發實現。為實現進行多瀏覽器功能測試的同時,完成對頁面的截圖,同時盡可能的提高執行效率,應選用支持多瀏覽器的Web功能自動化測試方案(必要條件),盡量滿足可分布式執行、具有截屏功能的方案。這里選用開源的selenium作為Web功能自動化測試工具,支持Android、blackberry、chrome、edge、firefox、ie、opera、safari多種瀏覽器,滿足以上要求。分別對每個截圖編號保存,將作為人工看圖階段的輸入。
二、人工看圖階段,實現對截圖的管理和分析。開發了看圖系統,主要功能包括:基線圖片庫的建立和維護、圖片自動比對、人工看圖。
1、基線圖片庫是一套完整的、正確的截圖,測試過程產生的截圖將于基線圖片庫中對應的圖片進行比對。基線圖片庫的建立是通過執行測試,產生出截圖,人工判斷截圖的正確性。對正確的圖片進行基線標記,對不正確的圖片再次進行截圖和修正,經過多輪可建立起最初的基線圖片庫。基線圖片庫的維護,當有截圖新增、修改、刪除時,進行標記,更新基線圖片庫,維持基線圖片的完整性和正確性。
2、圖片自動比對,實現兩張圖片的比較,對發現差異的地方進行特殊顯示。原理是,獲取到需要比對的兩張圖片,對其中一張圖片進行色調取反,然后以0.5的插值將兩張圖片混合。如果兩張圖片完全一樣,混合后產生的新圖應是一個顏色(灰色),如果有不同,則會區別顯示。
3、人工看圖,經過上一步,自動分析出有差異的圖片,并生成一張混合的插值圖片。通過人工看圖分析的方法,對有差異的圖片進行判斷,是否是錯誤,或需要更新基線圖片。人工工作量主要放在這個步驟,相對于傳統測試方法,極大減少了人工參與的程度。
本發明的一種基于自動化測試的瀏覽器兼容性測試方法和現有技術相比,具有以下有益效果:
本測試方法的核心是將測試過程分為兩個階段,Web功能自動化測試階段與人工看圖階段。Web功能自動化測試,擺脫了對人工的依賴,可安排在非工作時間完成,人工看圖有自動化輔助,只對差異圖片進行人工分析,減少人工參與的工作量。本測試方法在提高測試效率的同時,也避免了人為因素的遺漏和錯判,提高測試的準確性。
具體實施方式
下面結合具體實施例對本發明作進一步說明。
一種基于自動化測試的瀏覽器兼容性測試方法,將測試過程分為兩個階段,Web功能自動化測試階段和人工看圖階段,。Web功能自動化測試階段實現對多瀏覽器運行過程進行截圖并保存,人工看圖實現了對圖片的自動比對分析,對有差異的圖片再進行人工分析。劃分兩個階段后,分別實現。Web功能自動化測試階段的產出物——屏幕截圖,作為人工看圖階段的輸入,通過截圖作為兩階段連接的橋梁。瀏覽器兼容性的主要表現有兩個,頁面的展示渲染和對事件的響應。基于Web功能自動化測試方法,如果設計的功能測試腳本能正確執行通過,表明事件響應是兼容的。頁面的展示渲染可以通過截圖,對每個頁面及其變化進行截圖,再對圖片進行分析,從而測試頁面展示渲染的兼容性。
一、Web功能自動化測試階段,可采用的現有的Web功能自動化測試方案有很多。如果有適合的方案,不必要自行開發實現。為實現進行多瀏覽器功能測試的同時,完成對頁面的截圖,同時盡可能的提高執行效率,應選用支持多瀏覽器的Web功能自動化測試方案(必要條件),盡量滿足可分布式執行、具有截屏功能的方案。這里選用開源的selenium作為Web功能自動化測試工具,支持Android、blackberry、chrome、edge、firefox、ie、opera、safari多種瀏覽器,滿足以上要求。分別對每個截圖編號保存,將作為人工看圖階段的輸入。
二、人工看圖階段,實現對截圖的管理和分析。開發了看圖系統,主要功能包括:基線圖片庫的建立和維護、圖片自動比對、人工看圖。
1、基線圖片庫是一套完整的、正確的截圖,測試過程產生的截圖將于基線圖片庫中對應的圖片進行比對。基線圖片庫的建立是通過執行測試,產生出截圖,人工判斷截圖的正確性。對正確的圖片進行基線標記,對不正確的圖片再次進行截圖和修正,經過多輪可建立起最初的基線圖片庫。基線圖片庫的維護,當有截圖新增、修改、刪除時,進行標記,更新基線圖片庫,維持基線圖片的完整性和正確性。
2、圖片自動比對,實現兩張圖片的比較,對發現差異的地方進行特殊顯示。原理是,獲取到需要比對的兩張圖片,對其中一張圖片進行色調取反,然后以0.5的插值將兩張圖片混合。如果兩張圖片完全一樣,混合后產生的新圖應是一個顏色(灰色),如果有不同,則會區別顯示。
3、人工看圖,經過上一步,自動分析出有差異的圖片,并生成一張混合的插值圖片。通過人工看圖分析的方法,對有差異的圖片進行判斷,是否是錯誤,或需要更新基線圖片。人工工作量主要放在這個步驟,相對于傳統測試方法,極大減少了人工參與的程度。
本測試方法是對瀏覽器兼容性進行測試的方法,結合自動化測試方式與人工看圖方式,有效提高測試的效率和準確性。本發明將測試過程分為兩個階段,Web功能自動化測試階段與人工看圖階段。Web功能自動化測試實現了對多瀏覽器運行過程的截圖并保存,人工看圖階段實現了對圖片自動比對分析,對有差異的圖片進行人工分析。本發明優點是Web功能自動化測試,擺脫了對人工的依賴,可安排在非工作時間完成,人工看圖有自動化輔助,只對差異圖片進行人工分析,減少人工參與的工作量。本測試方法在提高測試效率的同時,也避免了人為因素的遺漏和錯判,提高測試的準確性。
通過上面具體實施方式,所述技術領域的技術人員可容易的實現本發明。但是應當理解,本發明并不限于上述的具體實施方式。在公開的實施方式的基礎上,所述技術領域的技術人員可任意組合不同的技術特征,從而實現不同的技術方案。
除說明書所述的技術特征外,均為本專業技術人員的已知技術。