本發(fā)明涉及互聯(lián)網(wǎng)測試領(lǐng)域,尤其涉及一種瀏覽器的瀏覽器網(wǎng)頁兼容性的檢測方法及終端。
背景技術(shù):
隨著社會的發(fā)展,越來越多的用戶通過各種自己喜愛的瀏覽器進(jìn)行網(wǎng)頁瀏覽。由于瀏覽器的種類繁多,同時很多客戶一直使用非標(biāo)準(zhǔn)的舊版本的瀏覽器,使得網(wǎng)頁開發(fā)工程師必須具備跨瀏覽器開發(fā)的能力,其開發(fā)的網(wǎng)頁應(yīng)用必須能兼容多種主流的瀏覽器,以確保網(wǎng)頁應(yīng)用在不同的瀏覽器環(huán)境中具有相同的外觀和功能。
目前,開發(fā)出來的瀏覽器需要使用大量的網(wǎng)站進(jìn)行兼容性測試,目前,現(xiàn)有技術(shù)中有至少以下兩種方式用于檢測瀏覽器網(wǎng)頁兼容性。一種是利用標(biāo)準(zhǔn)瀏覽器訪問開發(fā)的網(wǎng)站中的超鏈接,生成交互信息,該交互信息中包含超鏈接打開后的網(wǎng)頁的內(nèi)容,并由測試人員在待測試的瀏覽器下查看該交互信息并由測試人員確定該待測試的瀏覽器打開的網(wǎng)頁是否和標(biāo)準(zhǔn)瀏覽器打開的網(wǎng)頁顯示界面一致以確定該待測試的瀏覽器是否兼容。然而此種方式人工成本較高,檢測所消耗的時間長。另一種是通過網(wǎng)頁代碼靜態(tài)掃描,匹配規(guī)則庫進(jìn)行瀏覽器兼容性測試,具體的:測試系統(tǒng)對網(wǎng)頁應(yīng)用的頁面代碼進(jìn)行預(yù)處理,獲取頁面代碼的類型,根據(jù)該頁面代碼的類型獲取相應(yīng)的兼容性規(guī)則庫,并對頁面代碼進(jìn)行語法解析,獲取頁面代碼的語法樹,根據(jù)兼容性規(guī)則以及語法樹對頁面代碼進(jìn)行靜態(tài)掃描測試,將靜態(tài)掃描測試的結(jié)果輸出,從而實(shí)現(xiàn)對瀏覽器兼容性的測試。
然而,現(xiàn)有技術(shù)中的第一種測試方式的人工成本較高,檢測所消耗的時間也很長,第二種測試方式需要準(zhǔn)備大量的適用于被測試瀏覽器的規(guī)則庫,復(fù)雜度高。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明提供一種瀏覽器網(wǎng)頁兼容性的檢測方法,用于解決現(xiàn)有技術(shù)中檢測瀏覽器網(wǎng)頁兼容性所需要的人工成本高且消耗的時間長,及需要瀏覽器的規(guī)則庫等問題。
本發(fā)明實(shí)施例提供的瀏覽器網(wǎng)頁兼容性的檢測方法,包括:
在已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取所述測試網(wǎng)站中的待測試項目集合;
在所述標(biāo)準(zhǔn)瀏覽器中依次打開所述待測試項目集合中的待測試項目,并通過單步截圖的方式得到所述待測試項目集合在所述標(biāo)準(zhǔn)瀏覽器中的第一圖片集合;
在已啟動的待測試瀏覽器中依次打開所述待測試項目集合中的待測試項目,按照所述單步截圖的方式得到所述待測試項目集合在所述待測試瀏覽器中的第二圖片集合;
根據(jù)所述第一圖片集合及所述第二圖片集合的圖片相似率確定所述待測試瀏覽器的瀏覽器網(wǎng)頁兼容性。
本發(fā)明實(shí)施例提供的瀏覽器網(wǎng)頁兼容性的檢測系統(tǒng),包括:獲取單元,用于在已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取所述測試網(wǎng)站中的待測試項目集合;
第一截圖單元,用于在所述獲取單元得到所述待測試項目集合之后,在所述標(biāo)準(zhǔn)瀏覽器中依次打開所述待測試項目集合中的待測試項目,并通過單步截圖的方式得到所述待測試項目集合在所述標(biāo)準(zhǔn)瀏覽器中的第一圖片集合;
第二截圖單元,用于在所述第一截圖單元得到所述第一圖片集合之后,在已啟動的待測試瀏覽器中依次打開所述待測試項目集合中的待測試項目,按照所述單步截圖的方式得到所述待測試項目集合在所述待測試瀏覽器中的第二圖片集合;
確定單元,用于在所述第二截圖單元得到所述第二圖片集合之后,根據(jù)所述第一圖片集合及所述第二圖片集合的圖片相似率確定所述待測試瀏覽器的瀏覽器網(wǎng)頁兼容性。
從以上技術(shù)方案可以看出,本發(fā)明實(shí)施例具有以下優(yōu)點(diǎn):
在已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取該測試網(wǎng)站中的待測試項目集合,在標(biāo)準(zhǔn)瀏覽器中依次打開待測試項目集合中的待測試項目,并通過單步截圖的方式得到該待測試項目集合在該標(biāo)準(zhǔn)瀏覽器中的第一圖片集合;在已啟動的待測試瀏覽器中依次打開該待測試項目集合中的待測試 項目,按照單步截圖的方式得到該待測試項目集合在待測試瀏覽器中的第二圖片集合,最后根據(jù)第一圖片集合及第二圖片集合的圖片相似率確定該待測試瀏覽器網(wǎng)頁兼容性。通過在標(biāo)準(zhǔn)瀏覽器及待測試瀏覽器中對網(wǎng)站的待測試項目進(jìn)行截圖確定圖片相似率的方式檢測待測試瀏覽器網(wǎng)頁兼容性,使得不需要人工操作,即可完成瀏覽器的瀏覽器網(wǎng)頁兼容性的檢測,能夠有效節(jié)約人工成本,且不需要通過規(guī)則庫即可對瀏覽器網(wǎng)頁兼容性進(jìn)行檢測,檢測過程更加簡單方便。
為讓本發(fā)明的上述和其他目的、特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉較佳實(shí)施例,并配合所附圖式,作詳細(xì)說明如下。
附圖說明
圖1為本發(fā)明實(shí)施例中終端的結(jié)構(gòu)的示意圖;
圖2為本發(fā)明實(shí)施例中瀏覽器網(wǎng)頁兼容性的檢測方法的流程的一個示意圖;
圖3為本發(fā)明實(shí)施例中瀏覽器網(wǎng)頁兼容性的檢測方法的流程的另一示意圖;
圖4為本發(fā)明實(shí)施例中瀏覽器網(wǎng)頁兼容性的檢測系統(tǒng)的結(jié)構(gòu)的一個示意圖;
圖5為本發(fā)明實(shí)施例中瀏覽器網(wǎng)頁兼容性的檢測系統(tǒng)的結(jié)構(gòu)的一個示意圖。
具體實(shí)施方式
為更進(jìn)一步闡述本發(fā)明為實(shí)現(xiàn)預(yù)定發(fā)明目的所采取的技術(shù)手段及功效,以下結(jié)合附圖及較佳實(shí)施例,對依據(jù)本發(fā)明的具體實(shí)施方式、結(jié)構(gòu)、特征及其功效,詳細(xì)說明如后。
在本發(fā)明實(shí)施例中,瀏覽器網(wǎng)頁兼容性的檢測系統(tǒng)能夠?qū)Υ郎y試瀏覽器的瀏覽器網(wǎng)頁兼容性進(jìn)行檢測,具體的,檢測系統(tǒng)開啟標(biāo)準(zhǔn)瀏覽器及待測試瀏覽器,在標(biāo)準(zhǔn)瀏覽器上打開測試網(wǎng)站,獲取測試網(wǎng)站中的待測試項目集合;并在標(biāo)準(zhǔn)瀏覽器中依次打開待測試項目集合中的待測試項目,通過單步截圖的方式得到待測試項目集合在標(biāo)準(zhǔn)瀏覽器中的第一圖片集合,且檢測系統(tǒng)還將在待測試瀏覽器中依次打開待測試項目集合中的待測試項目,按照單步截圖的方式得到待測試項目集合在待測試瀏覽器中的第二圖 片集合,并將待測試項目在第一圖片集合中的圖片與在第二圖片集合中的圖片進(jìn)行比較,確定該待測試項目的圖片相似率,并可通過上述的比較得到待測試項目集合中的每一個待測試項目的圖片相似率,基于該圖片相似率即可確定待測試瀏覽器的瀏覽器網(wǎng)頁兼容性。該方法門檻低,適用于多種瀏覽器,能夠顯著降低瀏覽器網(wǎng)頁兼容性的檢測所需要的人力資源,縮短測試時間,且不需要建立規(guī)則庫,快速方便。
在本發(fā)明實(shí)施例中,瀏覽器網(wǎng)頁兼容性的檢測系統(tǒng)是運(yùn)行在終端上的,請參閱圖1,為本發(fā)明實(shí)施例中終端的結(jié)構(gòu)的示意圖,如圖1所示,終端包括存儲器102、存儲控制器104,一個或多個(圖中僅示出一個)處理器106、外設(shè)接口108、射頻模塊110、定位模塊112、攝像模塊114、音頻模塊116、觸控屏幕118以及按鍵模塊120。這些組件通過一條或多條通訊總線/信號線122相互通訊。
可以理解,圖1所示的結(jié)構(gòu)僅為示意,終端還可包括比圖1中所示更多或者更少的組件,或者具有與圖1所示不同的配置。圖1中所示的各組件可以采用硬件、軟件或其組合實(shí)現(xiàn)。
存儲器102可用于存儲軟件程序以及模塊,如本發(fā)明實(shí)施例中的在終端內(nèi)字符輸入方法及裝置對應(yīng)的程序指令/模塊,處理器102通過運(yùn)行存儲在存儲器104內(nèi)的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理,即實(shí)現(xiàn)上述的在終端內(nèi)對瀏覽器網(wǎng)頁兼容性的檢測方法。
存儲器102可包括高速隨機(jī)存儲器,還可包括非易失性存儲器,如一個或者多個磁性存儲裝置、閃存、或者其他非易失性固態(tài)存儲器。在一些實(shí)例中,存儲器102可進(jìn)一步包括相對于處理器106遠(yuǎn)程設(shè)置的存儲器,這些遠(yuǎn)程存儲器可以通過網(wǎng)絡(luò)連接至終端。上述網(wǎng)絡(luò)的實(shí)例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動通信網(wǎng)及其組合。處理器106以及其他可能的組件對存儲器102的訪問可在存儲控制器104的控制下進(jìn)行。
外設(shè)接口108將各種輸入/輸入裝置耦合至CPU以及存儲器102。處理器106運(yùn)行存儲器102內(nèi)的各種軟件、指令以執(zhí)行終端的各種功能以及進(jìn)行數(shù)據(jù)處理。
在一些實(shí)施例中,外設(shè)接口108,處理器106以及存儲控制器104可以在單個芯片中實(shí)現(xiàn)。在其他一些實(shí)例中,他們可以分別由獨(dú)立的芯片實(shí)現(xiàn)。
射頻模塊110用于接收以及發(fā)送電磁波,實(shí)現(xiàn)電磁波與電信號的相互轉(zhuǎn)換,從而與通訊網(wǎng)絡(luò)或者其他設(shè)備進(jìn)行通訊。射頻模塊110可包括各種現(xiàn)有的用于執(zhí)行這些功能的電路元件,例如,天線、射頻收發(fā)器、數(shù)字信號處理器、加密/解密芯片、用戶身份模塊(SIM)卡、存儲器等等。射頻模塊110可與各種網(wǎng)絡(luò)如互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、無線網(wǎng)絡(luò)進(jìn)行通訊或者通過無線網(wǎng)絡(luò)與其他設(shè)備進(jìn)行通訊。上述的無線網(wǎng)絡(luò)可包括蜂窩式電話網(wǎng)、無線局域網(wǎng)或者城域網(wǎng)。上述的無線網(wǎng)絡(luò)可以使用各種通信標(biāo)準(zhǔn)、協(xié)議及技術(shù),包括但并不限于全球移動通信系統(tǒng)(Global System for Mobile Communication,GSM)、增強(qiáng)型移動通信技術(shù)(Enhanced Data GSM Environment,EDGE),寬帶碼分多址技術(shù)(wideband code division multiple access,W-CDMA),碼分多址技術(shù)(Code division access,CDMA)、時分多址技術(shù)(time division multiple access,TDMA),藍(lán)牙,無線保真技術(shù)(Wireless,Fidelity,WiFi)(如美國電氣和電子工程師協(xié)會標(biāo)準(zhǔn)IEEE802.11a,IEEE 802.11b,IEEE802.11g和/或IEEE 802.11n)、網(wǎng)絡(luò)電話(Voice over internet protocal,VoIP)、全球微波互聯(lián)接入(Worldwide Interoperability for Microwave Access,Wi-Max)、其他用于郵件、即時通訊及短消息的協(xié)議,以及任何其他合適的通訊協(xié)議,甚至可包括那些當(dāng)前仍未被開發(fā)出來的協(xié)議。
定位模塊112用于獲取終端的當(dāng)前位置。定位模塊112的實(shí)例包括但不限于全球衛(wèi)星定位系統(tǒng)(GPS)、基于無線局域網(wǎng)或者移動通信網(wǎng)的定位技術(shù)。
攝像模塊114用于拍攝照片或者視頻。拍攝的照片或者視頻可以存儲至存儲器102內(nèi),并可通過射頻模塊110發(fā)送。
音頻模塊116向用戶提供音頻接口,其可包括一個或多個麥克風(fēng)、一個或者多個揚(yáng)聲器以及音頻電路。音頻電路從外設(shè)接口108處接收聲音數(shù)據(jù),將聲音數(shù)據(jù)轉(zhuǎn)換為電信息,將電信息傳輸至揚(yáng)聲器。揚(yáng)聲器將電信息轉(zhuǎn)換為人耳能聽到的聲波。音頻電路還從麥克風(fēng)處接收電信息,將電信號轉(zhuǎn)換為聲音數(shù)據(jù),并將聲音數(shù)據(jù)傳輸至外設(shè)接口108中以進(jìn)行進(jìn)一步的處理。音頻數(shù)據(jù)可以從存儲器102處或者通過射頻模塊110獲取。此外,音頻數(shù)據(jù)也可以存儲至存儲器102中或者通過射頻模塊110進(jìn)行發(fā)送。在一 些實(shí)例中,音頻模塊116還可包括一個耳機(jī)播孔,用于向耳機(jī)或者其他設(shè)備提供音頻接口。
觸控屏幕118在終端與用戶之間同時提供一個輸出及輸入界面。具體地,觸控屏幕118向用戶顯示視頻輸出,這些視頻輸出的內(nèi)容可包括文字、圖形、視頻、及其任意組合。一些輸出結(jié)果是對應(yīng)于一些用戶界面對象。觸控屏幕118還接收用戶的輸入,例如用戶的點(diǎn)擊、滑動等手勢操作,以便用戶界面對象對這些用戶的輸入做出響應(yīng)。檢測用戶輸入的技術(shù)可以是基于電阻式、電容式或者其他任意可能的觸控檢測技術(shù)。觸控屏幕118顯示單元的具體實(shí)例包括但并不限于液晶顯示器或發(fā)光聚合物顯示器。
按鍵模塊120同樣提供用戶向終端進(jìn)行輸入的接口,用戶可以通過按下不同的按鍵以使終端執(zhí)行不同的功能。
在本發(fā)明實(shí)施例中,瀏覽器網(wǎng)頁兼容性的檢測系統(tǒng)是運(yùn)行在上述終端上的,該檢測系統(tǒng)能夠利用標(biāo)準(zhǔn)瀏覽器和測試網(wǎng)站對待測試瀏覽器的瀏覽器網(wǎng)頁兼容性進(jìn)行檢測。
請參閱圖2,為本發(fā)明實(shí)施例中瀏覽器網(wǎng)頁兼容性的檢測方法的實(shí)施例,包括:
201、在已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取測試網(wǎng)站中的待測試項目集合;
在本發(fā)明實(shí)施例中,檢測系統(tǒng)將啟動標(biāo)準(zhǔn)瀏覽器和待測試瀏覽器,其中,標(biāo)準(zhǔn)瀏覽器泛指對萬維網(wǎng)(World Wide Web,W3C)所定義的CSS2.1規(guī)范提供了優(yōu)秀支持并能完美呈現(xiàn)的瀏覽器,例如IE瀏覽器。
在本發(fā)明實(shí)施例中,檢測系統(tǒng)在已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取測試網(wǎng)站中的待測試項目集合。
其中,待測試項目為網(wǎng)站中的元素,網(wǎng)站由多個網(wǎng)頁組成,一個網(wǎng)站的第一個網(wǎng)頁稱為主頁,主頁是所有網(wǎng)頁的索引頁,通過單機(jī)主頁上的超鏈接,可以打開其他的網(wǎng)頁。網(wǎng)站的總體結(jié)構(gòu)可以由節(jié)點(diǎn)樹表示。網(wǎng)頁中的元素包括文字、圖片、音頻、動畫、視頻、超鏈接、數(shù)據(jù)輸入接口等等。
在本發(fā)明實(shí)施例中,待測試項目集合可以是測試網(wǎng)站的所有元素屬于預(yù)先設(shè)置的類型的元素的集合,具體可由檢測系統(tǒng)遍歷測試網(wǎng)站中的所有元素,將滿足預(yù)先設(shè)置的類型的元素作為待測試項目集合中的待測試項目。 其中,預(yù)先設(shè)置的類型可以是超鏈接和數(shù)據(jù)輸入接口,其中,若預(yù)先設(shè)置的類型中包含數(shù)據(jù)輸入接口,則也將預(yù)先設(shè)置在該數(shù)據(jù)輸入接口中輸入的數(shù)據(jù),以便能夠進(jìn)入該數(shù)據(jù)接入接口所對應(yīng)的頁面,該數(shù)據(jù)可以由檢測系統(tǒng)默認(rèn)設(shè)置也可以由測試人員預(yù)先設(shè)置。其中,一個網(wǎng)頁上包含查詢接口,該查詢接口在該網(wǎng)頁上是通過可輸入數(shù)據(jù)的條形方框展示的,用戶可在該條形方框內(nèi)輸入需要查詢的數(shù)據(jù),為了使得能在不同瀏覽器上打開相同的頁面,需要預(yù)先設(shè)置輸入的數(shù)。
202、在標(biāo)準(zhǔn)瀏覽器中依次打開待測試項目集合中的待測試項目,并通過單步截圖的方式得到待測試項目集合在標(biāo)準(zhǔn)瀏覽器中的第一圖片集合;
在本發(fā)明實(shí)施例中,檢測系統(tǒng)在標(biāo)準(zhǔn)瀏覽器中依次打開待測試項目集合中的待測試項目,并通過單步截圖的方式得到待測試項目集合在標(biāo)準(zhǔn)瀏覽器中的第一圖片集合。其中,單步截圖的意思是每次打開一個頁面,則對該頁面進(jìn)行截圖,第一圖片集合中包含待測試項目集合中的每一個待測試項目集合在標(biāo)準(zhǔn)瀏覽器中打開后的頁面截圖。
203、在已啟動的待測試瀏覽器中依次打開待測試項目集合中的待測試項目,按照單步截圖的方式得到待測試項目集合在待測試瀏覽器中的第二圖片集合;
在本發(fā)明實(shí)施例中,檢測系統(tǒng)在得到待測試項目集合中的每一個待測試項目在標(biāo)準(zhǔn)瀏覽器中打開截圖得到的第一圖片集合之后,在已啟動的待測試瀏覽器中依次打開待測試項目集合中的待測試項目,按照單步截圖的方式得到待測試項目集合在待測試瀏覽器中的第二圖片集合,其中,第二圖片集合中包括待測試項目集合中的每一個待測試項目在待測試瀏覽器中打開后的頁面截圖。
在本發(fā)明實(shí)施例中,檢測系統(tǒng)在已啟動的待測試瀏覽器中依次打開待測試項目集合中的待測試項目之前,還將確定測試網(wǎng)站在該待測試瀏覽器中打開之后是否能查找到該待測試項目集合中的項目,具體的:檢測系統(tǒng)在已啟動的待測試瀏覽器中打開測試網(wǎng)站,遍歷該已打開的測試網(wǎng)站的所有元素,確定測試網(wǎng)站在待測試瀏覽器中打開后是否包含待測試項目集合中的所有待測試項目,若未包含待測試項目集合中的所有待測試項目,則確定該待測試瀏覽器出現(xiàn)了瀏覽器網(wǎng)頁兼容性問題,檢測系統(tǒng)停止對該待 測試瀏覽器進(jìn)行檢測;若包含待測試項目集合中的所有待測試項目,則需要對該待測試瀏覽器的瀏覽器網(wǎng)頁兼容性進(jìn)行進(jìn)一步檢測,檢測系統(tǒng)將執(zhí)行步驟203中的內(nèi)容。
204、根據(jù)第一圖片集合及第二圖片集合的圖片相似率確定待測試瀏覽器的瀏覽器網(wǎng)頁兼容性。
在本發(fā)明實(shí)施例中,檢測系統(tǒng)根據(jù)第一圖片集合及第二圖片集合的圖片相似率確定待測試瀏覽器的瀏覽器網(wǎng)頁兼容性。其中圖片相似率是一個待測試項目在第一圖片集合中的圖片與在第二圖片中的圖片比較后的相似率。
在本發(fā)明實(shí)施例中,在已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取該測試網(wǎng)站中的待測試項目集合,在標(biāo)準(zhǔn)瀏覽器中依次打開待測試項目集合中的待測試項目,并通過單步截圖的方式得到該待測試項目集合在該標(biāo)準(zhǔn)瀏覽器中的第一圖片集合;在已啟動的待測試瀏覽器中依次打開該待測試項目集合中的待測試項目,按照單步截圖的方式得到該待測試項目集合在待測試瀏覽器中的第二圖片集合,最后根據(jù)第一圖片集合及第二圖片集合的圖片相似率確定該待測試瀏覽器網(wǎng)頁兼容性。通過在標(biāo)準(zhǔn)瀏覽器及待測試瀏覽器中對網(wǎng)站的待測試項目進(jìn)行截圖確定圖片相似率的方式檢測待測試瀏覽器網(wǎng)頁兼容性,使得不需要人工操作,即可完成瀏覽器的瀏覽器網(wǎng)頁兼容性的檢測,能夠有效節(jié)約人工成本,且不需要通過規(guī)則庫即可對瀏覽器網(wǎng)頁兼容性進(jìn)行檢測,檢測過程更加簡單方便。
為了更好的理解本發(fā)明實(shí)施例中的技術(shù)方案,請參閱圖3,為本發(fā)明實(shí)施例中瀏覽器網(wǎng)頁兼容性的檢測方法的實(shí)施例,包括:
301、在已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取測試網(wǎng)站中的待測試項目集合;
在本發(fā)明實(shí)施例中,檢測系統(tǒng)將啟動標(biāo)準(zhǔn)瀏覽器和待測試瀏覽器,其中,標(biāo)準(zhǔn)瀏覽器泛指對萬維網(wǎng)(World Wide Web,W3C)所定義的CSS2.1規(guī)范提供了優(yōu)秀支持并能完美呈現(xiàn)的瀏覽器,例如IE瀏覽器。
在本發(fā)明實(shí)施例中,檢測系統(tǒng)在已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取測試網(wǎng)站中的待測試項目集合。
其中,待測試項目為網(wǎng)站中的元素,網(wǎng)站由多個網(wǎng)頁組成,一個網(wǎng)站 的第一個網(wǎng)頁稱為主頁,主頁是所有網(wǎng)頁的索引頁,通過單機(jī)主頁上的超鏈接,可以打開其他的網(wǎng)頁。網(wǎng)站的總體結(jié)構(gòu)可以由節(jié)點(diǎn)樹表示。網(wǎng)頁中的元素包括文字、圖片、音頻、動畫、視頻、超鏈接、數(shù)據(jù)輸入接口等等。
在本發(fā)明實(shí)施例中,待測試項目集合可以是測試網(wǎng)站的所有元素屬于預(yù)先設(shè)置的類型的元素的集合,具體可由檢測系統(tǒng)遍歷測試網(wǎng)站中的所有元素,將滿足預(yù)先設(shè)置的類型的元素作為待測試項目集合中的待測試項目。其中,預(yù)先設(shè)置的類型可以是超鏈接和數(shù)據(jù)輸入接口,其中,若預(yù)先設(shè)置的類型中包含數(shù)據(jù)輸入接口,則還需要預(yù)先設(shè)置在該數(shù)據(jù)輸入接口中輸入的數(shù)據(jù),以便能夠打開該數(shù)據(jù)輸入接口所對應(yīng)的頁面,該數(shù)據(jù)可以由檢測系統(tǒng)默認(rèn)設(shè)置也可以由測試人員預(yù)先設(shè)置。其中,一個網(wǎng)頁上包含查詢接口,該查詢接口在該網(wǎng)頁上是通過可輸入數(shù)據(jù)的條形方框展示的,用戶可在該條形方框內(nèi)輸入需要查詢的數(shù)據(jù),為了使得能在不同瀏覽器上打開相同的頁面,需要預(yù)先設(shè)置輸入的數(shù)據(jù)。
302、在標(biāo)準(zhǔn)瀏覽器中遍歷待測試項目集合中的待測試項目,打開待測試項目所對應(yīng)的網(wǎng)頁;
303、獲取網(wǎng)頁的頁面截圖的圖片,將待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系保存到第一圖片集合中;
在本發(fā)明實(shí)施例中,檢測系統(tǒng)獲取到待測試項目集合之后,在標(biāo)準(zhǔn)瀏覽器中遍歷待測試項目集合中的待測試項目,打開待測試項目所對應(yīng)的網(wǎng)頁,并獲取網(wǎng)頁的頁面截圖的圖片,將待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系保存到第一圖片集合中。
在本發(fā)明實(shí)施例中,待測試項目集合中的待測試項目之間的結(jié)構(gòu)是類似節(jié)點(diǎn)樹的結(jié)構(gòu),即一個網(wǎng)頁內(nèi)可以打開多個網(wǎng)頁,直至最后一個網(wǎng)頁。例如:測試網(wǎng)站的主頁上包含多個一級超鏈接,點(diǎn)進(jìn)每一個一級超鏈接都可以打開一個對應(yīng)的網(wǎng)頁,且在該網(wǎng)頁內(nèi)也包含二級超鏈接,點(diǎn)擊該二級超鏈接則可以進(jìn)入二級超鏈接對應(yīng)的網(wǎng)頁。
在本發(fā)明實(shí)施例中,測試系統(tǒng)是按照待測試項目之間的結(jié)構(gòu)進(jìn)行遍歷的,測試系統(tǒng)每打開一個待測試項目的網(wǎng)頁的頁面,都將對該頁面進(jìn)行截圖,并將截圖得到的圖片與該待測試項目的標(biāo)識進(jìn)行關(guān)聯(lián),將該圖片與該待測試項目的標(biāo)識的對應(yīng)關(guān)系保存到第一圖片集合中。
在本發(fā)明實(shí)施例中,網(wǎng)頁中的元素均具有唯一的標(biāo)識,因此,待測試項目集合中的每一個待測試項目也具有唯一的標(biāo)識,該標(biāo)識能夠唯一的標(biāo)識一個待測試項目。
304、在待測試瀏覽器中遍歷待測試項目集合中的待測試項目,打開待測試項目所對應(yīng)的網(wǎng)頁;
305、獲取網(wǎng)頁的頁面截圖的圖片,將待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系保存到第二圖片集合中;
在本發(fā)明實(shí)施例中,測試系統(tǒng)在獲取到待測試項目集合在標(biāo)準(zhǔn)瀏覽器中的第一圖片集合之后,將獲取該待測試項目集合在待測試瀏覽器中的第二圖片集合,具體的:
測試系統(tǒng)在待測試瀏覽器中遍歷待測試項目集合中的待測試項目集合,打開待測試項目對應(yīng)的網(wǎng)頁,獲取該網(wǎng)頁的頁面截圖的圖片,將待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系保存到第二圖片集合中。
在本發(fā)明實(shí)施例中,測試系統(tǒng)在待測試瀏覽器中遍歷待測試項目集合中的待測試項目之前,還將在待測試瀏覽器中打開該待測試項目集合對應(yīng)的測試網(wǎng)站,遍歷該測試網(wǎng)站中的所有的元素,判斷在待測試瀏覽器中打開的測試網(wǎng)站是否包含該待測試項目集合中的所有待測試項目,其中,待測試項目集合中的待測試項目也為測試網(wǎng)站的元素,若在待測試瀏覽器中打開的測試網(wǎng)站中包含該待測試項目集合中的所有待測試項目,則將進(jìn)行執(zhí)行步驟304中的:在待測試瀏覽器中遍歷待測試項目集合中的待測試項目,打開待測試項目所對應(yīng)的網(wǎng)頁;若在待測試瀏覽器中打開的測試網(wǎng)站中不包含待該待測試項目集合中的所有待測試項目,則確定該待測試瀏覽器的瀏覽器網(wǎng)頁兼容性出現(xiàn)問題。
在本發(fā)明實(shí)施例中,待測試項目集合中的待測試項目之間的結(jié)構(gòu)是類似節(jié)點(diǎn)樹的結(jié)構(gòu),即一個網(wǎng)頁內(nèi)可以打開多個網(wǎng)頁,直至最后一個網(wǎng)頁。例如:測試網(wǎng)站的主頁上包含多個一級超鏈接,點(diǎn)進(jìn)每一個一級超鏈接都可以打開一個對應(yīng)的網(wǎng)頁,且在該網(wǎng)頁內(nèi)也包含二級超鏈接,點(diǎn)擊該二級超鏈接則可以進(jìn)入二級超鏈接對應(yīng)的網(wǎng)頁。
在本發(fā)明實(shí)施例中,測試系統(tǒng)是按照待測試項目之間的結(jié)構(gòu)進(jìn)行遍歷的,測試系統(tǒng)每打開一個待測試項目的網(wǎng)頁的頁面,都將對該頁面進(jìn)行截 圖,并將截圖得到的圖片與該待測試項目的標(biāo)識進(jìn)行關(guān)聯(lián),將該圖片與該待測試項目的標(biāo)識的對應(yīng)關(guān)系保存到第一圖片集合中。
在本發(fā)明實(shí)施例中,網(wǎng)頁中的元素均具有唯一的標(biāo)識,因此,待測試項目集合中的每一個待測試項目也具有唯一的標(biāo)識,該標(biāo)識能夠唯一的標(biāo)識一個待測試項目。
306、利用第一圖片集合中包含的圖片與待測試項目的對應(yīng)關(guān)系及第二圖片集合中包含的圖片與待測試項目的對應(yīng)關(guān)系計算待測試項目集合中每一個待測試項目的圖片相似率,得到待測試項目集合對應(yīng)的圖片相似率集合;
在本發(fā)明實(shí)施例中,測試系統(tǒng)在得到待測試項目集合在標(biāo)準(zhǔn)瀏覽器中的第一圖片集合和在待測試瀏覽器中的第二圖片集合之后,將利用第一圖片集合中包含的圖片與待測試項目的對應(yīng)關(guān)系及第二圖片集合中包含的圖片與待測試項目的對應(yīng)關(guān)系計算待測試項目集合中每一個待測試項目的圖片相似率,得到該待測試項目集合對應(yīng)的圖片相似率集合。
具體的:測試系統(tǒng)按照待測試項目集合中的待測試項目的標(biāo)識,從第一圖片集合和第二圖片集合中獲取與待測試項目的標(biāo)識對應(yīng)的圖片進(jìn)行比對,確定該待測試項目的圖片相似率,并通過此種比較方式,可得到待測試項目集合中的每一個待測試項目的圖片相似率,即可得到待測試項目集合對應(yīng)的圖片相似率集合。例如,對于待測試項目的標(biāo)識為A的待測試項目,測試系統(tǒng)將從第一圖片集合中的待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系中,查找與待測試項目A對應(yīng)的圖片,該圖片為圖片B,并從第二圖片集合中的待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系中,查找與待測試項目A對應(yīng)的圖片,該圖片為圖片C,則比對圖片B和圖片C,得到待測試項目A的圖片相似率。
在本發(fā)明實(shí)施例中,對待測試項目的兩個圖片進(jìn)行比對,對比的內(nèi)容以是圖片的有效區(qū)域的大小之間的差別,圖片之間像素點(diǎn)之間的差別,以確定兩張圖片之間的相似率。
307、若圖片相似率集合中所有的圖片相似率均大于預(yù)先設(shè)置的數(shù)值,則確定待測試瀏覽器未發(fā)生瀏覽器網(wǎng)頁兼容性問題;
308、若圖片相似率集合中存在小于或等于預(yù)先設(shè)置的數(shù)值的圖片相似 率,則確定待測試瀏覽器發(fā)生瀏覽器網(wǎng)頁兼容性問題。
在本發(fā)明實(shí)施例中,測試瀏覽器在得到待測試項目集合的圖片相似率集合之后,將利用該圖片相似率集合判斷待測試瀏覽器的瀏覽器的網(wǎng)頁兼容性。
若該圖片相似率集合中的所有圖片相似率均大于預(yù)先設(shè)置的數(shù)值,則確定該待測試瀏覽器未發(fā)生瀏覽器網(wǎng)頁兼容性問題,若該圖片相似率集合中存在小于或等于預(yù)先設(shè)置的數(shù)值的圖片相似率,則確定待測試瀏覽器發(fā)生瀏覽器網(wǎng)頁兼容性問題。
在本發(fā)明實(shí)施例中,測試系統(tǒng)是利用待測試項目集合對應(yīng)的圖片相似率集合來確定待測試瀏覽器的瀏覽器網(wǎng)頁兼容性的。
需要說明的是,在本發(fā)明實(shí)施例中,測試網(wǎng)站的個數(shù)為至少一個,若包含有兩個及兩個以上測試網(wǎng)站,測試系統(tǒng)將按照本發(fā)明中的技術(shù)方案依次得到每一個測試網(wǎng)站的待測試項目集合,并依次得到每一個待測試項目集合的圖片集合,因此,可以得到所有測試網(wǎng)站在標(biāo)準(zhǔn)瀏覽器上的第一圖片集合和在待測試瀏覽器上的第二圖片集合,進(jìn)行對比以確定待測試瀏覽器的瀏覽器網(wǎng)頁兼容性。
在本發(fā)明實(shí)施中,待測試項目集合對應(yīng)的圖片相似率集合中可以僅僅只是包含圖片相似率,也可以包含圖片相似率與待測試項目的標(biāo)識之間的對應(yīng)關(guān)系,在實(shí)際應(yīng)用中,可根據(jù)需要設(shè)置圖片相似率集合中包含的是圖片相似率還是圖片相似率與待測試項目的標(biāo)識之間的對應(yīng)關(guān)系,此處不做限定。
需要說明的是,在本發(fā)明實(shí)施例中,檢測系統(tǒng)確定待測試瀏覽器為存在瀏覽器網(wǎng)頁兼容性問題的瀏覽器之后,為了便于進(jìn)一步對該檢測結(jié)果進(jìn)行確認(rèn),檢測系統(tǒng)得到待測試項目集合對應(yīng)的圖片相似率集合中包含了圖片相似率與待測試項目的標(biāo)識之間的對應(yīng)關(guān)系,檢測系統(tǒng)將從圖片相似率集合中獲取圖片相似率小于或等于預(yù)先設(shè)置的數(shù)值的待測試項目的標(biāo)識,并從第一圖片集合和第二圖片集合中獲取與該待測試項目的標(biāo)識對應(yīng)的兩張圖片,并顯示在檢測系統(tǒng)的顯示界面上,由人工進(jìn)行比對,使得能夠更好地確定檢測結(jié)果,避免對瀏覽器網(wǎng)頁兼容性的誤判。
在本發(fā)明實(shí)施例中,測試系統(tǒng)在啟動標(biāo)準(zhǔn)瀏覽器和待測試瀏覽器之后, 將在標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取測試網(wǎng)站中的待測試項目集合,在標(biāo)準(zhǔn)瀏覽器中遍歷待測試項目集合中的待測試項目,打開待測試項目所對應(yīng)的網(wǎng)頁,獲取網(wǎng)頁的頁面截圖的圖片,將待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系保存到第一圖片集合中,在待測試瀏覽器中遍歷待測試項目集合中的待測試項目,打開待測試項目所對應(yīng)的網(wǎng)頁,獲取網(wǎng)頁的頁面截圖的圖片,將待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系保存到第二圖片集合中,利用第一圖片集合中包含的圖片與待測試項目的對應(yīng)關(guān)系及第二圖片集合中包含的圖片與待測試項目的對應(yīng)關(guān)系計算待測試項目集合中每一個待測試項目的圖片相似率,以得到與待測試項目集合對應(yīng)的圖片相似率集合,若圖片相似率集合中所有的圖片相似率大于預(yù)先設(shè)置的數(shù)值,則確定待測試瀏覽器未發(fā)生瀏覽器網(wǎng)頁兼容性問題,若圖片相似率集合中存在小于或等于預(yù)先設(shè)置的數(shù)值的圖片相似率,則確定待測試瀏覽器發(fā)生瀏覽器網(wǎng)頁兼容性問題。通過對待測試項目在標(biāo)準(zhǔn)瀏覽器和待測試瀏覽器中的圖片進(jìn)行比對以確定待測試瀏覽器的瀏覽器網(wǎng)頁兼容性,不需要人工進(jìn)行比對,能夠有效的降低人工成本,且不需要預(yù)先建立規(guī)則庫,檢測方式更加快捷方便。
為了更好的理解本發(fā)明實(shí)施例中瀏覽器網(wǎng)頁兼容性的檢測方法,下面將介紹一個具體的應(yīng)用場景,如下:
檢測人員對待測試瀏覽器1的瀏覽器網(wǎng)頁兼容性進(jìn)行檢測,且檢測由在終端的用于對瀏覽器網(wǎng)頁兼容性進(jìn)行檢測的檢測系統(tǒng)的應(yīng)用程序APP執(zhí)行的,同時在該終端上還安裝了標(biāo)準(zhǔn)瀏覽器和待測試瀏覽器,其中標(biāo)準(zhǔn)瀏覽器為IE瀏覽器,且也預(yù)先設(shè)置了測試網(wǎng)站,該測試網(wǎng)站包括“測試網(wǎng)站A,測試網(wǎng)站B,測試網(wǎng)站C.......”。具體的檢測過程如下:
該檢測系統(tǒng)APP啟動IE瀏覽器,在IE瀏覽器上打開測試網(wǎng)站A,對該測試網(wǎng)站A的網(wǎng)頁上的所有元素進(jìn)行篩選,選取元素類型為超鏈接及數(shù)據(jù)輸入接口的元素作為測試網(wǎng)站A的待測試項目集合(項目A1,項目A11,項目A12,項目A13,......),并在IE瀏覽器中遍歷該測試網(wǎng)站A的待測試項目集合(項目A1,項目A11,項目A12,項目A13,......),獲取每一個待測試項目的截圖的圖片,并建立圖片與待測試項目的標(biāo)識之間的對應(yīng)關(guān)系,得到測試網(wǎng)站A的待測試項目集合的圖片集合(項目A1~圖片A1,項目A11~圖片A11,項目A12~圖片A12,項目A13~圖片A13,......), 對測試網(wǎng)站A完成圖片截取之后,檢測系統(tǒng)APP將關(guān)閉測試網(wǎng)站A并在IE瀏覽器上打開測試網(wǎng)站B,對測試網(wǎng)站B的網(wǎng)頁上的所有元素進(jìn)行篩選,選取元素類型為超鏈接及數(shù)據(jù)輸入接口的元素作為測試網(wǎng)站B的待測試項目集合(項目B1~圖片B1,項目B11~圖片B11,項目B12~圖片B12,項目B13~圖片B13),并在IE瀏覽器中遍歷該測試網(wǎng)站B的待測試項目集合(項目B1~圖片B1,項目B11~圖片B11,項目B12~圖片B12,項目B13~圖片B13),獲取每一個待測試項目的截圖的圖片,并建立圖片與待測試項目的標(biāo)識之間的對應(yīng)關(guān)系,得到測試網(wǎng)站B的待測試項目集合的圖片集合(項目B1~圖片B1,項目B11~圖片B11,項目B12~圖片B12,項目B13~圖片B13),通過上述方式,可以得到其他的測試網(wǎng)站例如測試網(wǎng)站C的待測試項目集合(項目C1,項目C11,項目C12,項目C13,......)及測試網(wǎng)站C的待測試項目集合的圖片集合(項目C1~圖片C1,項目C11~圖片C11,項目C12~圖片C12,項目C13~圖片C13),最后得到所有測試網(wǎng)站的第一圖片集合{(項目A1~圖片A1,項目A11~圖片A11,項目A12~圖片A12,項目A13~圖片A13,......),(項目B1~圖片B1,項目B11~圖片B11,項目B12~圖片B12,項目B13~圖片B13),(項目C1~圖片C1,項目C11~圖片C11,項目C12~圖片C12,項目C13~圖片C13)}。檢測APP將關(guān)閉IE瀏覽器。
檢測APP打開待測試瀏覽器1,并在待測試瀏覽器1獲取測試網(wǎng)站的圖片集合,具體的:在待測試瀏覽器1上打開測試網(wǎng)站A,在并在待測試瀏覽器1中遍歷該測試網(wǎng)站A的元素,確定在待測試瀏覽器1中該測試網(wǎng)站A是否包含待測試項目集合(項目A1,項目A11,項目A12,項目A13,......),若未包含該待測試項目集合(項目A1,項目A11,項目A12,項目A13,......),則確定該待測試瀏覽器1出現(xiàn)了瀏覽器網(wǎng)頁兼容性問題,若包含該待測試項目集合(項目A1,項目A11,項目A12,項目A13,......),則依次打開該待測試項目集合中的每一個待測試項目,獲取每一個待測試項目的截圖的圖片,并建立圖片與待測試項目的標(biāo)識之間的對應(yīng)關(guān)系,得到測試網(wǎng)站A的待測試項目集合在待測試瀏覽器1打開后的圖片集合(項目A1~圖片a1,項目A11~圖片a11,項目A12~圖片a12,項目A13~圖片a13,......),且檢測APP將按照上述方式得到其他測試網(wǎng)站如測試網(wǎng)站B,測試網(wǎng)站C 的圖片集合,即測試網(wǎng)站B的待測試項目集合的圖片集合(項目B1~圖片b1,項目B11~圖片b11,項目B12~圖片b12,項目B13~圖片b13),及測試網(wǎng)站C的待測試項目集合的圖片集合(項目C1~圖片c1,項目C11~圖片c11,項目C12~圖片c12,項目C13~圖片c13),最后得到所有測試網(wǎng)站的第二圖片集合{(項目A1~圖片a1,項目A11~圖片a11,項目A12~圖片a12,項目A13~圖片a13,......),(項目B1~圖片b1,項目B11~圖片b11,項目B12~圖片b12,項目B13~圖片b13),(項目C1~圖片c1,項目C11~圖片c11,項目C12~圖片c12,項目C13~圖片c13)}。且檢測APP將關(guān)閉待測試瀏覽器1。
檢測APP在得到IE瀏覽器的第一圖片集合和待測試瀏覽器1的第二圖片集合之后,將對圖片進(jìn)行比對,例如,對于項目A1,則從第一圖片集合中獲取與項目A1對應(yīng)的圖片A1并從第二圖片集合中獲取與項目A1對應(yīng)的圖片a1,比對圖片A1和圖片a1,確定該項目A1的在標(biāo)準(zhǔn)瀏覽器IE瀏覽器中打開的圖片與在待測試瀏覽器1打開的圖片的圖片相似率,且該項目A1的圖片相似率為100%;接著對比項目A11,從第一圖片集合中獲取與項目A11對應(yīng)的圖片A11并從第二圖片集合中獲取與項目A11對應(yīng)的圖片a11,確定圖片A11和a11的圖片相似率為99%,以此類推,計算出所有待測試項目的圖片相似率,得到待測試項目的圖片相似率集合{(100%,98%,......),(99%,100%,.......),......}。
檢測APP根據(jù)得到的圖片相似率集合確定待測試瀏覽器1是否出現(xiàn)瀏覽器網(wǎng)頁兼容性問題,具體的:若該圖片相似率集合中的所有的圖片相似率均大于98%,則確定該待測試瀏覽器1未出現(xiàn)瀏覽器網(wǎng)頁兼容性問題,若該圖片相似率集合中存在小于或等于98%的圖片相似率,則確定該待測試瀏覽器1存在瀏覽器網(wǎng)頁兼容性問題。
由于上述的圖片相似率集合中存在等于98%的圖片相似率,則確定待測試瀏覽器1存在瀏覽器網(wǎng)頁兼容性問題。
請參閱圖4,為本發(fā)明實(shí)施例中瀏覽器網(wǎng)頁兼容性的檢測系統(tǒng)的結(jié)構(gòu)的實(shí)施例,包括:
獲取單元401,用于在已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取測試網(wǎng)站中的待測試項目集合;
第一截圖單元402,用于在獲取單元401得到待測試項目集合之后,在標(biāo)準(zhǔn)瀏覽器中依次打開待測試項目集合中的待測試項目,并通過單步截圖的方式得到待測試項目集合在標(biāo)準(zhǔn)瀏覽器中的第一圖片集合;
第二截圖單元403,用于在第一截圖單元402得到第一圖片集合之后,在已啟動的待測試瀏覽器中依次打開待測試項目集合中的待測試項目,按照單步截圖的方式得到待測試項目集合在待測試瀏覽器中的第二圖片集合;
確定單元404,用于在第二截圖單元403得到第二圖片集合之后,根據(jù)第一圖片集合及第二圖片集合的圖片相似率確定待測試瀏覽器的瀏覽器網(wǎng)頁兼容性。
在本發(fā)明實(shí)施例中,檢測系統(tǒng)將啟動標(biāo)準(zhǔn)瀏覽器和待測試瀏覽器,其中,標(biāo)準(zhǔn)瀏覽器泛指對萬維網(wǎng)(World Wide Web,W3C)所定義的CSS2.1規(guī)范提供了優(yōu)秀支持并能完美呈現(xiàn)的瀏覽器,例如IE瀏覽器。
其中,待測試項目為網(wǎng)站中的元素,網(wǎng)站由多個網(wǎng)頁組成,一個網(wǎng)站的第一個網(wǎng)頁稱為主頁,主頁是所有網(wǎng)頁的索引頁,通過單機(jī)主頁上的超鏈接,可以打開其他的網(wǎng)頁。網(wǎng)站的總體結(jié)構(gòu)可以由節(jié)點(diǎn)樹表示。網(wǎng)頁中的元素包括文字、圖片、音頻、動畫、視頻、超鏈接、數(shù)據(jù)輸入接口等等。
其中,單步截圖的意思是每次打開一個頁面,則對該頁面進(jìn)行截圖,第一圖片集合中包含待測試項目集合中的每一個待測試項目集合在標(biāo)準(zhǔn)瀏覽器中打開后的頁面截圖。
在本發(fā)明實(shí)施例中,檢測系統(tǒng)在已啟動的待測試瀏覽器中依次打開待測試項目集合中的待測試項目之前,還將確定測試網(wǎng)站在該待測試瀏覽器中打開之后是否能查找到該待測試項目集合中的項目,具體的:檢測系統(tǒng)在已啟動的待測試瀏覽器中打開測試網(wǎng)站,遍歷該已打開的測試網(wǎng)站的所有元素,確定測試網(wǎng)站在待測試瀏覽器中打開后是否包含待測試項目集合中的所有待測試項目,若未包含待測試項目集合中的所有待測試項目,則確定該待測試瀏覽器出現(xiàn)了瀏覽器網(wǎng)頁兼容性問題,檢測系統(tǒng)停止對該待測試瀏覽器進(jìn)行檢測;若包含待測試項目集合中的所有待測試項目,則需要對該待測試瀏覽器的瀏覽器網(wǎng)頁兼容性進(jìn)行進(jìn)一步檢測,檢測系統(tǒng)將執(zhí)行第二截圖單元403。
在本發(fā)明實(shí)施例中,獲取單元401在已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取測試網(wǎng)站中的待測試項目集合;接著,第一截圖單元402在標(biāo)準(zhǔn)瀏覽器中依次打開待測試項目集合中的待測試項目,并通過單步截圖的方式得到待測試項目集合在標(biāo)準(zhǔn)瀏覽器中的第一圖片集合;并由第二截圖單元403在已啟動的待測試瀏覽器中依次打開待測試項目集合中的待測試項目,按照單步截圖的方式得到待測試項目集合在待測試瀏覽器中的第二圖片集合;最后確定單元404根據(jù)第一圖片集合及第二圖片集合的圖片相似率確定待測試瀏覽器的瀏覽器網(wǎng)頁兼容性。
在本發(fā)明實(shí)施例中,在已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取該測試網(wǎng)站中的待測試項目集合,在標(biāo)準(zhǔn)瀏覽器中依次打開待測試項目集合中的待測試項目,并通過單步截圖的方式得到該待測試項目集合在該標(biāo)準(zhǔn)瀏覽器中的第一圖片集合;在已啟動的待測試瀏覽器中依次打開該待測試項目集合中的待測試項目,按照單步截圖的方式得到該待測試項目集合在待測試瀏覽器中的第二圖片集合,最后根據(jù)第一圖片集合及第二圖片集合的圖片相似率確定該待測試瀏覽器網(wǎng)頁兼容性。通過在標(biāo)準(zhǔn)瀏覽器及待測試瀏覽器中對網(wǎng)站的待測試項目進(jìn)行截圖確定圖片相似率的方式檢測待測試瀏覽器網(wǎng)頁兼容性,使得不需要人工操作,即可完成瀏覽器的瀏覽器網(wǎng)頁兼容性的檢測,能夠有效節(jié)約人工成本,且不需要通過規(guī)則庫即可對瀏覽器網(wǎng)頁兼容性進(jìn)行檢測,檢測過程更加簡單方便。
為了更好的理解本發(fā)明實(shí)施例中的瀏覽器網(wǎng)頁兼容性的檢測系統(tǒng),請參閱圖5,為本發(fā)明實(shí)施例中檢測系統(tǒng)的結(jié)構(gòu)的實(shí)施例,包括:如圖4所示實(shí)施例中的獲取單元401,第一截圖單元402,第二截圖單元403,確定單元404,且與圖4所示實(shí)施例中描述的內(nèi)容相似,此處不做贅述。
其中,獲取單元401具體用于:在已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,遍歷測試網(wǎng)站中的所有元素,將滿足預(yù)先設(shè)置的類型的元素作為待測試項目集合中的待測試項目,預(yù)先設(shè)置的類型為超鏈接和數(shù)據(jù)輸入接口。
其中,第一截圖單元402包括:
第一遍歷打開單元501,用于在標(biāo)準(zhǔn)瀏覽器中遍歷待測試項目集合中的待測試項目,打開待測試項目所對應(yīng)的網(wǎng)頁;
第一獲取單元502,用于獲取網(wǎng)頁的頁面截圖的圖片,將待測試項目的 標(biāo)識與圖片的對應(yīng)關(guān)系保存到第一圖片集合中。
其中,第二截圖單元403包括:
第二遍歷打開單元503,用于在待測試瀏覽器中遍歷待測試項目集合中的待測試項目,打開待測試項目所對應(yīng)的網(wǎng)頁;
第二獲取單元504,用于獲取網(wǎng)頁的頁面截圖的圖片,將待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系保存到第二圖片集合中。
其中,確定單元404包括:
計算單元505,用于利用第一圖片集合中包含的圖片與待測試項目的對應(yīng)關(guān)系及第二圖片集合中包含的圖片與待測試項目的對應(yīng)關(guān)系計算待測試項目集合中每一個待測試項目的圖片相似率,得到所述待測試項目集合對應(yīng)的相似率集合;
結(jié)果確定單元506,用于若圖片相似率集合中所有的圖片相似率均大于預(yù)先設(shè)置的數(shù)值,則確定待測試瀏覽器未發(fā)生瀏覽器網(wǎng)頁兼容性問題;若該圖片相似率集合中存在小于或等于預(yù)先設(shè)置的數(shù)值的圖片相似率,則確定待測試瀏覽器發(fā)生瀏覽器網(wǎng)頁兼容性問題。
在本發(fā)明實(shí)施例中,檢測系統(tǒng)將啟動標(biāo)準(zhǔn)瀏覽器和待測試瀏覽器,其中,標(biāo)準(zhǔn)瀏覽器泛指對萬維網(wǎng)(World Wide Web,W3C)所定義的CSS2.1規(guī)范提供了優(yōu)秀支持并能完美呈現(xiàn)的瀏覽器,例如IE瀏覽器。
其中,待測試項目為網(wǎng)站中的元素,網(wǎng)站由多個網(wǎng)頁組成,一個網(wǎng)站的第一個網(wǎng)頁稱為主頁,主頁是所有網(wǎng)頁的索引頁,通過單機(jī)主頁上的超鏈接,可以打開其他的網(wǎng)頁。網(wǎng)站的總體結(jié)構(gòu)可以由節(jié)點(diǎn)樹表示。網(wǎng)頁中的元素包括文字、圖片、音頻、動畫、視頻、超鏈接、數(shù)據(jù)輸入接口等等。
在本發(fā)明實(shí)施例中,待測試項目集合中的待測試項目之間的結(jié)構(gòu)是類似節(jié)點(diǎn)樹的結(jié)構(gòu),即一個網(wǎng)頁內(nèi)可以打開多個網(wǎng)頁,直至最后一個網(wǎng)頁。例如:測試網(wǎng)站的主頁上包含多個一級超鏈接,點(diǎn)進(jìn)每一個一級超鏈接都可以打開一個對應(yīng)的網(wǎng)頁,且在該網(wǎng)頁內(nèi)也包含二級超鏈接,點(diǎn)擊該二級超鏈接則可以進(jìn)入二級超鏈接對應(yīng)的網(wǎng)頁。
在本發(fā)明實(shí)施例中,測試系統(tǒng)是按照待測試項目之間的結(jié)構(gòu)進(jìn)行遍歷的,測試系統(tǒng)每打開一個待測試項目的網(wǎng)頁的頁面,都將對該頁面進(jìn)行截圖,并將截圖得到的圖片與該待測試項目的標(biāo)識進(jìn)行關(guān)聯(lián),將該圖片與該 待測試項目的標(biāo)識的對應(yīng)關(guān)系保存到第一圖片集合中。
在本發(fā)明實(shí)施例中,網(wǎng)頁中的元素均具有唯一的標(biāo)識,因此,待測試項目集合中的每一個待測試項目也具有唯一的標(biāo)識,該標(biāo)識能夠唯一的標(biāo)識一個待測試項目。
在本發(fā)明實(shí)施例中,測試系統(tǒng)在待測試瀏覽器中遍歷待測試項目集合中的待測試項目之前,還將在待測試瀏覽器中打開該待測試項目集合對應(yīng)的測試網(wǎng)站,遍歷該測試網(wǎng)站中的所有的元素,判斷在待測試瀏覽器中打開的測試網(wǎng)站是否包含該待測試項目集合中的所有待測試項目,其中,待測試項目集合中的待測試項目也為測試網(wǎng)站的元素,若在待測試瀏覽器中打開的測試網(wǎng)站中包含該待測試項目集合中的所有待測試項目,則執(zhí)行第一遍歷打開單元501;若在待測試瀏覽器中打開的測試網(wǎng)站中不包含待該待測試項目集合中的所有待測試項目,則確定該待測試瀏覽器的瀏覽器網(wǎng)頁兼容性出現(xiàn)問題。
在本發(fā)明實(shí)施例中,待測試項目集合中的待測試項目之間的結(jié)構(gòu)是類似節(jié)點(diǎn)樹的結(jié)構(gòu),即一個網(wǎng)頁內(nèi)可以打開多個網(wǎng)頁,直至最后一個網(wǎng)頁。例如:測試網(wǎng)站的主頁上包含多個一級超鏈接,點(diǎn)進(jìn)每一個一級超鏈接都可以打開一個對應(yīng)的網(wǎng)頁,且在該網(wǎng)頁內(nèi)也包含二級超鏈接,點(diǎn)擊該二級超鏈接則可以進(jìn)入二級超鏈接對應(yīng)的網(wǎng)頁。
在本發(fā)明實(shí)施例中,測試系統(tǒng)是按照待測試項目之間的結(jié)構(gòu)進(jìn)行遍歷的,測試系統(tǒng)每打開一個待測試項目的網(wǎng)頁的頁面,都將對該頁面進(jìn)行截圖,并將截圖得到的圖片與該待測試項目的標(biāo)識進(jìn)行關(guān)聯(lián),將該圖片與該待測試項目的標(biāo)識的對應(yīng)關(guān)系保存到第一圖片集合中。
在本發(fā)明實(shí)施例中,測試系統(tǒng)對待測試項目集合中的每一個待測試項目在第一圖片集合中的圖片和第二圖片集合中的圖片進(jìn)行比對,確定每一個待測試項目的比對結(jié)果,例如,對于待測試項目的標(biāo)識為A的待測試項目,測試系統(tǒng)將從第一圖片集合中的待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系中,查找與待測試項目A對應(yīng)的圖片,該圖片為圖片B,并從第二圖片集合中的待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系中,查找與待測試項目A對應(yīng)的圖片,該圖片為圖片C,則比對圖片B和圖片C,得到待測試項目A的圖片相似率。
在本發(fā)明實(shí)施例中,對每一個待測試項目的兩個圖片進(jìn)行比對,對比的內(nèi)容以是圖片的有效區(qū)域的大小之間的差別,圖片之間像素點(diǎn)之間的差別,確定每一個待測試項目的圖片相似率。
需要說明的是,在本發(fā)明實(shí)施例中,測試網(wǎng)站的個數(shù)為至少一個,若包含有兩個及兩個以上測試網(wǎng)站,測試系統(tǒng)將按照本發(fā)明中的技術(shù)方案依次得到每一個測試網(wǎng)站的待測試項目集合,并依次得到每一個待測試項目集合的圖片集合,因此,可以得到所有測試網(wǎng)站在標(biāo)準(zhǔn)瀏覽器上的第一圖片集合和在待測試瀏覽器上的第二圖片集合,進(jìn)行對比以確定待測試瀏覽器的瀏覽器網(wǎng)頁兼容性。
在本發(fā)明實(shí)施中,待測試項目集合對應(yīng)的圖片相似率集合中可以僅僅只是包含圖片相似率,也可以包含圖片相似率與待測試項目的標(biāo)識之間的對應(yīng)關(guān)系,在實(shí)際應(yīng)用中,可根據(jù)需要設(shè)置圖片相似率集合中包含的是圖片相似率還是圖片相似率與待測試項目的標(biāo)識之間的對應(yīng)關(guān)系,此處不做限定。
需要說明的是,在本發(fā)明實(shí)施例中,測試網(wǎng)站的個數(shù)為至少一個,若包含有兩個及兩個以上測試網(wǎng)站,測試系統(tǒng)將按照本發(fā)明中的技術(shù)方案依次得到每一個測試網(wǎng)站的待測試項目集合,并依次得到每一個待測試項目集合的圖片集合,因此,可以得到所有測試網(wǎng)站在標(biāo)準(zhǔn)瀏覽器上的第一圖片集合和在待測試瀏覽器上的第二圖片集合,進(jìn)行對比以確定待測試瀏覽器的瀏覽器網(wǎng)頁兼容性。
需要說明的是,在本發(fā)明實(shí)施例中,檢測系統(tǒng)確定待測試瀏覽器為存在瀏覽器網(wǎng)頁兼容性問題的瀏覽器之后,為了便于進(jìn)一步對該檢測結(jié)果進(jìn)行確認(rèn),檢測系統(tǒng)得到待測試項目集合對應(yīng)的圖片相似率集合中包含了圖片相似率與待測試項目的標(biāo)識之間的對應(yīng)關(guān)系,檢測系統(tǒng)將從圖片相似率集合中獲取圖片相似率小于或等于預(yù)先設(shè)置的數(shù)值的待測試項目的標(biāo)識,并從第一圖片集合和第二圖片集合中獲取與該待測試項目的標(biāo)識對應(yīng)的兩張圖片,并顯示在檢測系統(tǒng)的顯示界面上,由人工進(jìn)行比對,使得能夠更好地確定檢測結(jié)果,避免對瀏覽器網(wǎng)頁兼容性的誤判。
在本發(fā)明實(shí)施例中,獲取單元401在已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取測試網(wǎng)站中的待測試項目集合,且獲取單元401具體用于:在 已啟動的標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,遍歷測試網(wǎng)站中的所有元素,將滿足預(yù)先設(shè)置的類型的元素作為待測試項目集合中的待測試項目,預(yù)先設(shè)置的類型為超鏈接和數(shù)據(jù)輸入接口;接著,第一截圖單元402在標(biāo)準(zhǔn)瀏覽器中依次打開待測試項目集合中的待測試項目,并通過單步截圖的方式得到待測試項目集合在標(biāo)準(zhǔn)瀏覽器中的第一圖片集合;具體的:第一截圖單元402中的第一遍歷打開單元501在標(biāo)準(zhǔn)瀏覽器中遍歷待測試項目集合中的待測試項目,打開待測試項目所對應(yīng)的網(wǎng)頁;并由第一獲取單元502獲取網(wǎng)頁的頁面截圖的圖片,將待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系保存到第一圖片集合中。接著,第二截圖單元403在已啟動的待測試瀏覽器中依次打開待測試項目集合中的待測試項目,按照單步截圖的方式得到待測試項目集合在待測試瀏覽器中的第二圖片集合;具體的:第二截圖單元403中的第二遍歷打開單元503,用于在待測試瀏覽器中遍歷待測試項目集合中的待測試項目,打開待測試項目所對應(yīng)的網(wǎng)頁;并由第二獲取單元504,用于獲取網(wǎng)頁的頁面截圖的圖片,將待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系保存到第二圖片集合中。最后確定單元404根據(jù)第一圖片集合及第二圖片集合的圖片相似率確定待測試瀏覽器的瀏覽器網(wǎng)頁兼容性;具體的:確定單元404中的計算單元505利用第一圖片集合中包含的圖片與待測試項目的對應(yīng)關(guān)系及第二圖片集合中包含的圖片與待測試項目的對應(yīng)關(guān)系計算待測試項目集合中每一個待測試項目的圖片相似率;若圖片相似率集合中的所有圖片相似率均大于預(yù)先設(shè)置的數(shù)值,則確定待測試瀏覽器未發(fā)生瀏覽器網(wǎng)頁兼容性問題;若圖片相似率集合中存在小于或等于預(yù)先設(shè)置的數(shù)值的圖片相似率,則確定待測試瀏覽器發(fā)生瀏覽器網(wǎng)頁兼容性問題。
在本發(fā)明實(shí)施例中,測試系統(tǒng)在啟動標(biāo)準(zhǔn)瀏覽器和待測試瀏覽器之后,將在標(biāo)準(zhǔn)瀏覽器中打開測試網(wǎng)站,獲取測試網(wǎng)站中的待測試項目集合,在標(biāo)準(zhǔn)瀏覽器中遍歷待測試項目集合中的待測試項目,打開待測試項目所對應(yīng)的網(wǎng)頁,獲取網(wǎng)頁的頁面截圖的圖片,將待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系保存到第一圖片集合中,在待測試瀏覽器中遍歷待測試項目集合中的待測試項目,打開待測試項目所對應(yīng)的網(wǎng)頁,獲取網(wǎng)頁的頁面截圖的圖片,將待測試項目的標(biāo)識與圖片的對應(yīng)關(guān)系保存到第二圖片集合中,利用第一圖片集合中包含的圖片與待測試項目的對應(yīng)關(guān)系及第二圖片集合中包 含的圖片與待測試項目的對應(yīng)關(guān)系計算待測試項目集合中每一個待測試項目的圖片相似率,得到待測試項目集合對應(yīng)的圖片相似率集合,若圖片相似率集合中所有的圖片相似率大于預(yù)先設(shè)置的數(shù)值,則確定待測試瀏覽器未發(fā)生瀏覽器網(wǎng)頁兼容性問題,若圖片相似率集合中存在小于或等于預(yù)先設(shè)置的數(shù)值的圖片相似率,則確定待測試瀏覽器發(fā)生瀏覽器網(wǎng)頁兼容性問題。通過對待測試項目在標(biāo)準(zhǔn)瀏覽器和待測試瀏覽器中的圖片進(jìn)行比對以確定待測試瀏覽器的瀏覽器網(wǎng)頁兼容性,不需要人工進(jìn)行比對,能夠有效的降低人工成本,且不需要預(yù)先建立規(guī)則庫,檢測方式更加快捷方便。
以上所述,僅是本發(fā)明的較佳實(shí)施例而已,并非對本發(fā)明作任何形式上的限制,雖然本發(fā)明已以較佳實(shí)施例揭露如上,然而并非用以限定本發(fā)明,任何熟悉本專業(yè)的技術(shù)人員,在不脫離本發(fā)明技術(shù)方案范圍內(nèi),當(dāng)可利用上述揭示的技術(shù)內(nèi)容做出些許更動或修飾為等同變化的等效實(shí)施例,但凡是未脫離本發(fā)明技術(shù)方案內(nèi)容,依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對以上實(shí)施例所作的任何簡單修改、等同變化與修飾,均仍屬于本發(fā)明技術(shù)方案的范圍內(nèi)。