两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種web自動化測試方法及電子設(shè)備與流程

文檔序號:11216178閱讀:392來源:國知局
一種web自動化測試方法及電子設(shè)備與流程

本發(fā)明涉及自動化測試領(lǐng)域,尤其涉及一種web自動化測試方法及電子設(shè)備。



背景技術(shù):

自動化測試是對軟件產(chǎn)品質(zhì)量保障的重要一環(huán),日常研發(fā)中,由于快速迭代的原因,我們經(jīng)常需要在各個業(yè)務(wù)線上進行主流程的回歸測試,這也是功能自動化測試高效性的主要運用和體現(xiàn)。在web和移動端的功能自動化測試中,通過腳本代碼操作界面,進行點擊、滑動等操作來模擬用戶完成一系列功能流程,但是,在這個過程中,通常無法預(yù)測網(wǎng)絡(luò)環(huán)境會如何影響頁面加載時間,以及網(wǎng)站運營人員臨時配置的廣告等彈層頁面,所以,判定頁面的加載狀態(tài),識別個性化控件的準(zhǔn)確率就會成為這個過程的瓶頸,影響后續(xù)腳本執(zhí)行的成功率。

根據(jù)經(jīng)驗,在自動化測試執(zhí)行過程中,頁面中出現(xiàn)的異常未知的彈層是導(dǎo)致測試腳本非功能性失敗的主要原因。雖然基于xpath、css選擇器進行元素定位及判定的技術(shù)已經(jīng)比較成熟,但這些技術(shù)對于在完全未知的頁面中局限性較大,比如xpath需要從已知的節(jié)點開始定位相應(yīng)的元素,它必須建立在我們已經(jīng)掌握一定的頁面特性如元素的id、name等屬性的前提下,否則就只能進行盲目的嘗試,失敗率高,浪費成本。



技術(shù)實現(xiàn)要素:

有鑒于此,本發(fā)明實施例提供一種web自動化測試方法及電子設(shè)備,用于解決現(xiàn)有自動化測試方法的失敗率高及浪費成本的問題,本發(fā)明提供一種web自動化測試方案,能夠提升web測試執(zhí)行成功率。

第一方面,本發(fā)明實施例提供一種web自動化測試方法,包括如下步驟:

訪問待測試網(wǎng)頁;

判斷所述待測試網(wǎng)頁是否加載成功;

若所述待測試網(wǎng)頁加載成功,在所述待測試網(wǎng)頁中進行目標(biāo)元素定位;

若未定位出目標(biāo)元素,則對所述待測試網(wǎng)頁中是否存在浮層或彈窗進行識別;

若識別出所述待測試網(wǎng)頁中存在浮層或彈窗,則關(guān)閉所述浮層或彈窗后,在所述待測試網(wǎng)頁中重新進行目標(biāo)元素定位;

若在所述待測試網(wǎng)頁中重新定位出目標(biāo)元素,則對所述目標(biāo)元素進行操作測試。

結(jié)合第一方面,在第一方面的第一種實施方式中,所述判斷所述待測試網(wǎng)頁是否加載成功,包括:

按預(yù)定周期截取所述待測試網(wǎng)頁的屏幕截圖,判斷相鄰兩張屏幕截圖的像素差異是否持續(xù)小于預(yù)定閾值;

若相鄰兩張屏幕截圖的像素差異持續(xù)小于所述預(yù)定閾值,則確定所述待測試網(wǎng)頁加載成功。

結(jié)合第一方面的第一種實施方式,在第一方面的第二種實施方式中,所述按預(yù)定周期截取所述待測試網(wǎng)頁的屏幕截圖,判斷相鄰兩張屏幕截圖的像素差異是否持續(xù)小于預(yù)定閾值,包括:

按預(yù)定周期截取所述待測試網(wǎng)頁的屏幕截圖,判斷按所述預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異是否小于預(yù)定閾值;

若按所述預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異小于所述預(yù)定閾值,則在第一預(yù)設(shè)時長內(nèi)繼續(xù)按所述預(yù)定周期截取所述待測試網(wǎng)頁的屏幕截圖,判斷在第一預(yù)設(shè)時長內(nèi)繼續(xù)按所述預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異是否均小于所述預(yù)定閾值;

其中,所述若相鄰兩張屏幕截圖的像素差異持續(xù)小于所述預(yù)定閾值,則確定所述待測試網(wǎng)頁加載成功,包括:

若在第一預(yù)設(shè)時長內(nèi)繼續(xù)按所述預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異均小于所述預(yù)定閾值,則確定所述待測試網(wǎng)頁加載成功。

結(jié)合第一方面的第二種實施方式,在第一方面的第三種實施方式中,所述按預(yù)定周期截取所述待測試網(wǎng)頁的屏幕截圖,判斷按所述預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異是否小于預(yù)定閾值,包括:

在訪問所述待測試網(wǎng)頁第二預(yù)設(shè)時長之內(nèi)按預(yù)定周期截取所述待測試網(wǎng)頁的屏幕截圖,判斷在訪問所述待測試網(wǎng)頁第二預(yù)設(shè)時長之內(nèi)按所述預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異是否小于預(yù)定閾值。

結(jié)合第一方面,在第一方面的第四種實施方式中,所述若未定位出目標(biāo)元素,則對所述待測試網(wǎng)頁中是否存在浮層或彈窗進行識別,包括:

若未定位到目標(biāo)元素,則對所述待測試網(wǎng)頁的預(yù)定區(qū)域進行圖像識別;

根據(jù)所述圖像識別的結(jié)果,判斷所述待測試網(wǎng)頁中是否存在浮層或彈窗。

結(jié)合第一方面,在第一方面的第五種可能的實現(xiàn)方式中,所述目標(biāo)元素為按鈕或輸入框控件。

結(jié)合第一方面,在第一方面的第六種可能的實現(xiàn)方式中,所述web自動化測試方法還包括:

若識別出所述待測試網(wǎng)頁中存在浮層或彈窗,則對所述浮層或彈窗進行截屏并保存在日志中。

結(jié)合第一方面,在第一方面的第七種實施方式中,若在所述待測試網(wǎng)頁中未重新定位出目標(biāo)元素,則再次對所述待測試網(wǎng)頁中是否存在浮層或彈窗進行識別;

經(jīng)過所述再次識別,若識別出所述待測試網(wǎng)頁中存在浮層或彈窗,則關(guān)閉所述浮層或彈窗后,在所述待測試網(wǎng)頁中再次重新進行目標(biāo)元素定位;

若在所述待測試網(wǎng)頁中再次重新定位出目標(biāo)元素,則對所述目標(biāo)元素進行操作測試。

結(jié)合第一方面的第七種實施方式,在第一方面的第八種實施方式中,若在所述待測試網(wǎng)頁中未再次重新定位出目標(biāo)元素,則生成異常報告并記錄日志;和/或,若識別不出所述待測試網(wǎng)頁中存在浮層或彈窗,則對所述待測試網(wǎng)頁進行截屏并生成測試錯誤報告。

第二方面,本發(fā)明實施例提供一種電子設(shè)備,所述電子設(shè)備包括:殼體、處理器、存儲器、電路板和電源電路,其中,電路板安置在殼體圍成的空間內(nèi)部,處理器和存儲器設(shè)置在電路板上;電源電路,用于為上述電子設(shè)備的各個電路或器件供電;存儲器用于存儲可執(zhí)行程序代碼;處理器通過讀取存儲器中存儲的可執(zhí)行程序代碼來運行與可執(zhí)行程序代碼對應(yīng)的程序,用于執(zhí)行前述任一實施方式所述的web自動化測試方法。

本發(fā)明實施例提供的web自動化測試方法及電子設(shè)備,在web自動化測試中,通過判斷頁面加載狀態(tài),在頁面加載成功后定位目標(biāo)元素,在未定位出目標(biāo)元素時通過識別待測試網(wǎng)頁中是否存在浮層或彈窗,若識別出所述待測試網(wǎng)頁中存在浮層或彈窗,則關(guān)閉所述浮層或彈窗后重新進行目標(biāo)元素定位,可以解決由于頁面中出現(xiàn)異常未知的彈層而導(dǎo)致測試腳本非功能性失敗的問題,提高測試成功率。

附圖說明

為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其它的附圖。

圖1為本發(fā)明提供的一種web自動化測試方法實施例一的流程圖;

圖2為步驟102的優(yōu)選實施方法流程圖;

圖3為加載網(wǎng)頁的屏幕像素隨訪問時間的變化圖;

圖4為本發(fā)明提供的一種web自動化測試方法實施例二的流程圖;

圖5為本發(fā)明提供的一種web自動化測試裝置實施例一的結(jié)構(gòu)示意圖;

圖6為本發(fā)明提供的一種web自動化測試裝置實施例二的結(jié)構(gòu)示意圖;

圖7為本發(fā)明提供的一種web自動化測試裝置實施例三的結(jié)構(gòu)示意圖;

圖8為本發(fā)明提供的一種web自動化測試裝置實施例四的結(jié)構(gòu)示意圖;

圖9為本發(fā)明提供的一種web自動化測試裝置實施例五的結(jié)構(gòu)示意圖;

圖10為本發(fā)明提供的一種web自動化測試裝置實施例六的結(jié)構(gòu)示意圖;

圖11為本發(fā)明提供的一種web自動化測試裝置實施例七的結(jié)構(gòu)示意圖;

圖12為本發(fā)明提供的電子設(shè)備的一個實施例的結(jié)構(gòu)示意圖。

具體實施方式

下面結(jié)合附圖對本發(fā)明實施例一種web自動化測試方案進行詳細(xì)描述。

應(yīng)當(dāng)明確,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護的范圍。

圖1為本發(fā)明提供的一種web自動化測試方法實施例一的流程圖,如圖1所示,本實施例的方法可以包括:

步驟101、訪問待測試網(wǎng)頁。

本實施例中,可以通過web應(yīng)用程序測試工具selenium訪問待測試網(wǎng)頁。

步驟102、判斷待測試網(wǎng)頁是否加載成功,若是,則執(zhí)行步驟103,否則,結(jié)束流程。

優(yōu)選地,此步驟可以按預(yù)定周期截取所述待測試網(wǎng)頁的屏幕截圖,判斷相鄰兩張屏幕截圖的像素差異是否持續(xù)小于預(yù)定閾值;若相鄰兩張屏幕截圖的像素差異持續(xù)小于所述預(yù)定閾值,則確定所述待測試網(wǎng)頁加載成功。

步驟103、在待測試網(wǎng)頁中進行目標(biāo)元素定位。

此步驟中,若定位出目標(biāo)元素,則執(zhí)行步驟107,若未定位出目標(biāo)元素,則執(zhí)行步驟104。

其中,可以預(yù)先指定目標(biāo)元素為按鈕或輸入框控件。

優(yōu)選地,用xpath或css在待測試網(wǎng)頁中進行目標(biāo)元素定位。

步驟104、判斷待測試網(wǎng)頁中是否能識別出浮層或彈窗。

此步驟中,對待測試網(wǎng)頁中是否存在浮層或彈窗進行識別,若識別出所述待測試網(wǎng)頁中存在浮層或彈窗,則執(zhí)行步驟105。

具體地,若未定位到目標(biāo)元素,此步驟對待測試網(wǎng)頁的預(yù)定區(qū)域進行圖像識別,并根據(jù)所述圖像識別的結(jié)果判斷所述待測試網(wǎng)頁中是否存在浮層或彈窗(如alert彈窗)。例如:將待測試網(wǎng)頁頁面高度的1/3~2/3范圍設(shè)定為預(yù)定區(qū)域,在此預(yù)定區(qū)域內(nèi)識別是否有形狀為矩形且大小在26×26像素~100×100像素范圍內(nèi)的圖像,若是,則將這種圖像視為是浮層或彈窗。

步驟105、關(guān)閉所述浮層或彈窗。

例如:在識別出的圖像(預(yù)先設(shè)定的視為浮層或彈窗的圖像)上的隨機點進行點擊操作以關(guān)閉所述浮層或彈窗,還可以進一步記錄日志。

步驟106、在待測試網(wǎng)頁中重新進行目標(biāo)元素定位。

本實施例中,關(guān)閉浮層或彈窗后在待測試網(wǎng)頁中重新進行目標(biāo)元素定位,這樣的機制可以應(yīng)對一次圖像識別失敗的情況。此步驟的實施方式和步驟103相同,此處不再贅述,若此步驟中在所述待測試網(wǎng)頁中重新定位出目標(biāo)元素,則執(zhí)行步驟107。

步驟107、對定位出的目標(biāo)元素進行操作測試。

此步驟中,對定位出的目標(biāo)元素進行預(yù)先設(shè)定的測試腳本,例如:點擊控件,點擊后校驗頁面的跳轉(zhuǎn)結(jié)果與預(yù)期是否一致。

本實施例提供的web自動化測試方法及裝置,在web自動化測試中,通過判斷頁面加載狀態(tài),在頁面加載成功后定位目標(biāo)元素,在未定位出目標(biāo)元素時通過識別待測試網(wǎng)頁中是否存在浮層或彈窗,若識別出所述待測試網(wǎng)頁中存在浮層或彈窗,則關(guān)閉所述浮層或彈窗后重新進行目標(biāo)元素定位,可以解決由于頁面中出現(xiàn)異常未知的彈層而導(dǎo)致測試腳本非功能性失敗的問題,提高測試成功率。

在一可選實施例中,為了應(yīng)對頁面的連續(xù)彈窗對測試的影響,在圖1所示實施例中,若步驟106在所述待測試網(wǎng)頁中未重新定位出目標(biāo)元素,則步驟106之后還可再次對所述待測試網(wǎng)頁中是否存在浮層或彈窗進行識別;若經(jīng)過所述再次識別,識別出待測試網(wǎng)頁中存在浮層或彈窗,則關(guān)閉所述浮層或彈窗后,在所述待測試網(wǎng)頁中再次重新進行目標(biāo)元素定位;若在所述待測試網(wǎng)頁中再次重新定位出目標(biāo)元素,則對所述目標(biāo)元素進行操作測試。此實施例中,當(dāng)目標(biāo)元素定位失敗后,通過識別浮層或彈窗后,重復(fù)目標(biāo)元素定位過程,直至重復(fù)三次定位目標(biāo)元素仍失敗,則確定本次測試異常。

圖2為步驟102的優(yōu)選實施方法流程圖,包括以下步驟201-204:

步驟201、按預(yù)定周期截取待測試網(wǎng)頁的屏幕截圖。

例如,以100ms為預(yù)定周期,從訪問所述待測試網(wǎng)頁的時刻開始每隔100ms截取待測試網(wǎng)頁的屏幕截圖。

步驟202、判斷按預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異是否小于預(yù)定閾值,若是,則執(zhí)行步驟203。

例如,若以100ms為預(yù)定周期,從訪問所述待測試網(wǎng)頁的時刻開始每隔100ms截取待測試網(wǎng)頁的屏幕截圖,在每次截取一張待測試網(wǎng)頁的屏幕截圖時,將本次截取的屏幕截圖和上一次截取的屏幕截圖進行像素比較,若本次截取的屏幕截圖和上一次截取的屏幕截圖的像素差異小于預(yù)定閾值,如小于1%,則執(zhí)行下一步驟203。

步驟203、在第一預(yù)設(shè)時長內(nèi)繼續(xù)按預(yù)定周期截取待測試網(wǎng)頁的屏幕截圖。

例如:若以100ms為預(yù)定周期,從訪問所述待測試網(wǎng)頁的時刻開始每隔100ms截取待測試網(wǎng)頁的屏幕截圖,在截取的相鄰兩張屏幕截圖的像素差異首次小于預(yù)定閾值時,此步驟中繼續(xù)按預(yù)定周期截取待測試網(wǎng)頁的屏幕截圖500ms,(第一預(yù)設(shè)時長為500ms),即:在截取的相鄰兩張屏幕截圖的像素差異首次小于預(yù)定閾值時刻開始,每隔100ms截取一次待測試網(wǎng)頁的屏幕截圖,繼續(xù)截取5張待測試網(wǎng)頁的屏幕截圖。

步驟204、判斷在第一預(yù)設(shè)時長內(nèi)繼續(xù)按預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異是否均小于預(yù)定閾值。

此步驟中,若判斷結(jié)果為是,則確定待測試網(wǎng)頁加載成功,隨后執(zhí)行步驟103,若判斷結(jié)果為否,則確定待測試網(wǎng)頁加載不成功,結(jié)束流程。如圖3所示,x軸表示時間(單位:秒),y軸表示屏幕截圖的像素差異值,在頁面沒有加載完成時,屏幕是劇烈變化的,一旦完成加載圖片像素差異值就接近0,基于這個數(shù)據(jù),判斷頁面加載在一段時間內(nèi)不變化,就認(rèn)為頁面加載完成了。

例如:若以100ms為預(yù)定周期,從訪問所述待測試網(wǎng)頁的時刻開始每隔100ms截取待測試網(wǎng)頁的屏幕截圖,在截取的相鄰兩張屏幕截圖的像素差異首次小于預(yù)定閾值時,繼續(xù)按預(yù)定周期截取5張待測試網(wǎng)頁的屏幕截圖,并將這5張待測試網(wǎng)頁的屏幕截圖中第1、2張屏幕截圖,第2、3張屏幕截圖,第3、4張屏幕截圖,第4、5張屏幕截圖分別進行圖像像素比較,查看所有相鄰兩張屏幕截圖的像素差異是否小于1%,若第1、2張屏幕截圖,第2、3張屏幕截圖,第3、4張屏幕截圖,第4、5張屏幕截圖的像素差異均小于1%,則確定所述待測試網(wǎng)頁加載成功,若有任意兩張相鄰兩張屏幕截圖的像素差異不小于1%,則認(rèn)為待測試網(wǎng)頁加載失敗。

優(yōu)選地,為了防止某些特殊情況下,待測試網(wǎng)頁加載不成功,屏幕一直劇烈變化的情況下(即按預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異一直不小于預(yù)定閾值),步驟201-202無止盡執(zhí)行下去,圖2所示方法中,可以設(shè)定步驟201是在訪問所述待測試網(wǎng)頁第二預(yù)設(shè)時長之內(nèi)按預(yù)定周期截取所述待測試網(wǎng)頁的屏幕截圖,步驟202相應(yīng)地判斷在訪問所述待測試網(wǎng)頁第二預(yù)設(shè)時長之內(nèi)按所述預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異是否小于預(yù)定閾值。例如:可以設(shè)定第二預(yù)設(shè)時長為10s,在訪問待測試網(wǎng)頁10s內(nèi)按預(yù)定周期截取待測試網(wǎng)頁的屏幕截圖,若在這10s內(nèi)首次出現(xiàn)相鄰兩張屏幕截圖的像素差異小于所述預(yù)定閾值,則執(zhí)行步驟203,若在這10s內(nèi)相鄰兩張屏幕截圖的像素差異始終不小于預(yù)定閾值,則確定待測試網(wǎng)頁加載不成功。

圖4為本發(fā)明提供的一種web自動化測試方法實施例二的流程圖,如圖4所示,本實施例的方法可以包括:

步驟401、通過selenium訪問待測試網(wǎng)頁。

步驟402、判斷待測試網(wǎng)頁是否加載成功,若是,則執(zhí)行步驟403,否則結(jié)束流程。

本實施例中,此步驟可以采用圖2所示方法實施,此處不再贅述。

步驟403、判斷用xpath或css在待測試網(wǎng)頁中是否能定位出目標(biāo)元素,若定位出目標(biāo)元素,則執(zhí)行步驟404,若不能定位出目標(biāo)元素,則執(zhí)行步驟405。

步驟404、對定位出的目標(biāo)元素進行操作測試。

步驟405、令n=n+1。

其中,n的初始值為0,n用于表征本輪流程中在待測試網(wǎng)頁中進行目標(biāo)元素定位的次數(shù)。

步驟406、判斷n是否等于3,若是,則執(zhí)行步驟407,否則(即n小于3時),繼續(xù)執(zhí)行步驟408。

步驟407、生成異常報告并記錄日志。

步驟408、通過圖像識別待測試網(wǎng)頁中的浮層或彈窗。

步驟409、根據(jù)所述圖像識別的結(jié)果判斷待測試網(wǎng)頁中是否存在浮層或彈窗。

本步驟中,若判斷結(jié)果為是,則執(zhí)行步驟410,否則執(zhí)行步驟411。

本實施例中,步驟408-409的過程和上述方法實施例的步驟104類似,此處不再贅述。

步驟410、對識別出的浮層或彈窗進行截屏并保存在日志中,隨后關(guān)閉所述浮層或彈窗,返回執(zhí)行步驟403。

步驟411、對待測試網(wǎng)頁進行截屏并生成測試錯誤報告,返回執(zhí)行步驟403。

本實施例中,當(dāng)識別不出任何圖像或報錯時,當(dāng)作是被測系統(tǒng)的異常,是正常的測試結(jié)果,進行截屏和錯誤報告。

本實施例二中,把圖像識別技術(shù)運用在web自動化測試中來判定頁面加載狀態(tài)和識別頁面元素,不需要任何預(yù)先參數(shù)條件,而是更靈活和真實的模擬人的視覺下進行的操作,來對頁面中的內(nèi)容和圖像進行判定,更高效地幫助識別那些會影響測試執(zhí)行的非功能性異常情況,能夠提升測試執(zhí)行成功率。

對應(yīng)于本發(fā)明提供的web自動化測試方法,本發(fā)明還提供web自動化測試裝置。圖5為本發(fā)明提供的一種web自動化測試裝置實施例一的結(jié)構(gòu)示意圖,如圖5所示,本實施例的裝置可以包括:訪問模塊11、判斷模塊12、首次定位模塊13、首次識別模塊14、二次定位模塊15、測試模塊16;其中,訪問模塊11,用于訪問待測試網(wǎng)頁;判斷模塊12,用于判斷訪問模塊11訪問的待測試網(wǎng)頁是否加載成功;首次定位模塊13,用于在判斷模塊12判斷出待測試網(wǎng)頁加載成功時,在待測試網(wǎng)頁中進行目標(biāo)元素定位;首次識別模塊14,用于在首次定位模塊13未定位出目標(biāo)元素時,對待測試網(wǎng)頁中是否存在浮層或彈窗進行識別;二次定位模塊15,用于在首次識別模塊14識別出待測試網(wǎng)頁中存在浮層或彈窗時,關(guān)閉浮層或彈窗后,在待測試網(wǎng)頁中重新進行目標(biāo)元素定位;測試模塊16,用于在首次定位模塊13在待測試網(wǎng)頁中定位出目標(biāo)元素或二次定位模塊15在待測試網(wǎng)頁中重新定位出目標(biāo)元素時,對目標(biāo)元素進行操作測試。

本實施例的裝置,可以用于執(zhí)行圖1所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

圖6為本發(fā)明提供的一種web自動化測試裝置實施例二的結(jié)構(gòu)示意圖,如圖6所示,本實施例的裝置在圖5所示裝置結(jié)構(gòu)的基礎(chǔ)上,進一步地,判斷模塊12包括截圖判斷子模塊121和第一確定子模塊122;其中,截圖判斷子模塊121,用于按預(yù)定周期截取待測試網(wǎng)頁的屏幕截圖,并判斷相鄰兩張屏幕截圖的像素差異是否持續(xù)小于預(yù)定閾值;第一確定子模塊122,用于在截圖判斷子模塊121判斷出相鄰兩張屏幕截圖的像素差異持續(xù)小于預(yù)定閾值時,確定待測試網(wǎng)頁加載成功,或者在截圖判斷子模塊121判斷出相鄰兩張屏幕截圖的像素差異不持續(xù)小于預(yù)定閾值時,確定待測試網(wǎng)頁加載失敗。

本實施例的裝置,可以用于執(zhí)行圖1所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

圖7為本發(fā)明提供的一種web自動化測試裝置實施例三的結(jié)構(gòu)示意圖,如圖7所示,本實施例的裝置在圖6所示裝置結(jié)構(gòu)的基礎(chǔ)上,進一步地,截圖判斷子模塊121包括第一截圖判斷單元1211和第二截圖判斷單元1212;其中,第一截圖判斷單元1211,用于按預(yù)定周期截取待測試網(wǎng)頁的屏幕截圖,判斷按預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異是否小于預(yù)定閾值;第二截圖判斷單元1212,用于在第一截圖判斷單元1211判斷出按預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異小于預(yù)定閾值時,在第一預(yù)設(shè)時長內(nèi)繼續(xù)按預(yù)定周期截取待測試網(wǎng)頁的屏幕截圖,并判斷在第一預(yù)設(shè)時長內(nèi)繼續(xù)按預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異是否均小于預(yù)定閾值;本實施例中,第一確定子模塊122,具體用于在第二截圖判斷單元1212判斷出在第一預(yù)設(shè)時長內(nèi)繼續(xù)按預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異均小于預(yù)定閾值時,確定待測試網(wǎng)頁加載成功,反之,確定待測試網(wǎng)頁加載失敗。

本實施例的裝置,可以用于執(zhí)行圖1和圖2所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

在一優(yōu)選實施例中,圖7所示的第一截圖判斷單元1211,具體用于在訪問模塊11訪問待測試網(wǎng)頁第二預(yù)設(shè)時長之內(nèi)按預(yù)定周期截取待測試網(wǎng)頁的屏幕截圖,并判斷在訪問待測試網(wǎng)頁第二預(yù)設(shè)時長之內(nèi)按預(yù)定周期截取的相鄰兩張屏幕截圖的像素差異是否小于預(yù)定閾值。

圖8為本發(fā)明提供的一種web自動化測試裝置實施例四的結(jié)構(gòu)示意圖,如圖8所示,本實施例的裝置在圖5所示裝置結(jié)構(gòu)的基礎(chǔ)上,進一步地,首次識別模塊14包括圖像識別子模塊141和判斷子模塊142;其中,圖像識別子模塊141,用于在首次定位模塊未定位出目標(biāo)元素時,對待測試網(wǎng)頁的預(yù)定區(qū)域進行圖像識別;判斷子模塊142,用于根據(jù)圖像識別子模塊141進行圖像識別的結(jié)果,判斷待測試網(wǎng)頁中是否存在浮層或彈窗。

本實施例的裝置,可以用于執(zhí)行圖1或圖4所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

圖9為本發(fā)明提供的一種web自動化測試裝置實施例五的結(jié)構(gòu)示意圖,如圖9所示,本實施例的裝置在圖5所示裝置結(jié)構(gòu)的基礎(chǔ)上,進一步地,還包括記錄模塊17,用于在首次識別模塊14識別出待測試網(wǎng)頁中存在浮層或彈窗時,對浮層或彈窗進行截屏并保存在日志中。

本實施例的裝置,可以用于執(zhí)行圖1或圖4所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

圖10為本發(fā)明提供的一種web自動化測試裝置實施例六的結(jié)構(gòu)示意圖,如圖10所示,本實施例的裝置在圖5所示裝置結(jié)構(gòu)的基礎(chǔ)上,進一步地,還包括二次識別模塊18和三次定位模塊19;其中,二次識別模塊18,用于在二次定位模塊15在待測試網(wǎng)頁中未重新定位出目標(biāo)元素時,再次對待測試網(wǎng)頁中是否存在浮層或彈窗進行識別;三次定位模塊19,用于在二次識別模塊18識別出待測試網(wǎng)頁中存在浮層或彈窗時,關(guān)閉浮層或彈窗后,在待測試網(wǎng)頁中再次重新進行目標(biāo)元素定位;本實施例中,測試模塊16還用于在三次定位模塊19在待測試網(wǎng)頁中再次重新定位出目標(biāo)元素時,對目標(biāo)元素進行操作測試。

本實施例的裝置,可以用于執(zhí)行圖4所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

圖11為本發(fā)明提供的一種web自動化測試裝置實施例七的結(jié)構(gòu)示意圖,如圖11所示,本實施例的裝置在圖10所示裝置結(jié)構(gòu)的基礎(chǔ)上,進一步地,還包括:報告模塊20,用于在三次定位模塊19在待測試網(wǎng)頁中未再次重新定位出目標(biāo)元素時,生成異常報告并記錄日志。

本實施例的裝置,可以用于執(zhí)行圖4所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

在一優(yōu)選實施例中,圖11中的報告模塊20,還用于在首次識別模塊14或二次識別模塊18識別不出待測試網(wǎng)頁中存在浮層或彈窗時,對待測試網(wǎng)頁進行截屏并生成測試錯誤報告。本實施例的裝置,可以用于執(zhí)行圖4所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

在一優(yōu)選實施例中,上述方案中的首次識別模塊14、二次識別模塊18也可以實施為同一功能模塊,例如簡稱為“識別模塊”;首次定位模塊13、二次定位模塊15、三次定位模塊19也可以實施為同一模塊,例如簡稱為“定位模塊”,該定位模塊用于在判斷模塊12判斷出待測試網(wǎng)頁加載成功時,在待測試網(wǎng)頁中進行目標(biāo)元素定位,若定位不到目標(biāo)元素,則第二次在待測試網(wǎng)頁中進行目標(biāo)元素定位,若第二次還定位不到目標(biāo)元素,則第三次在待測試網(wǎng)頁中進行目標(biāo)元素定位;若重復(fù)三次在待測試網(wǎng)頁中都定位不到目標(biāo)元素,則測試異常;若定位到目標(biāo)元素,則測試模塊16對其定位出的目標(biāo)元素進行操作測試;識別模塊定位模塊在第一、第二次定位不到目標(biāo)元素時,對對待測試網(wǎng)頁中是否存在浮層或彈窗進行識別,此處不再贅述。

本發(fā)明實施例還提供一種電子設(shè)備。圖12為本發(fā)明提供的電子設(shè)備的一個實施例的結(jié)構(gòu)示意圖,可以實現(xiàn)本發(fā)明圖1或圖4所示實施例的流程,如圖12所示,上述電子設(shè)備可以包括:殼體21、處理器22、存儲器23、電路板24和電源電路25,其中,電路板24安置在殼體21圍成的空間內(nèi)部,處理器22和存儲器23設(shè)置在電路板24上;電源電路25,用于為上述電子設(shè)備的各個電路或器件供電;存儲器23用于存儲可執(zhí)行程序代碼;處理器22通過讀取存儲器23中存儲的可執(zhí)行程序代碼來運行與可執(zhí)行程序代碼對應(yīng)的程序,用于執(zhí)行前述任一實施例所述的web自動化測試方法。

該電子設(shè)備以多種形式存在,包括但不限于:

(1)移動通信設(shè)備:這類設(shè)備的特點是具備移動通信功能,并且以提供話音、數(shù)據(jù)通信為主要目標(biāo)。這類終端包括:智能手機(例如iphone)、多媒體手機、功能性手機,以及低端手機等。

(2)超移動個人計算機設(shè)備:這類設(shè)備屬于個人計算機的范疇,有計算和處理功能,一般也具備移動上網(wǎng)特性。這類終端包括:pda、mid和umpc設(shè)備等,例如ipad。

(3)便攜式娛樂設(shè)備:這類設(shè)備可以顯示和播放多媒體內(nèi)容。該類設(shè)備包括:音頻、視頻播放模塊(例如ipod),掌上游戲機,電子書,以及智能玩具和便攜式車載導(dǎo)航設(shè)備。

(4)服務(wù)器:提供計算服務(wù)的設(shè)備,服務(wù)器的構(gòu)成包括處理器、硬盤、內(nèi)存、系統(tǒng)總線等,服務(wù)器和通用的計算機架構(gòu)類似,但是由于需要提供高可靠的服務(wù),因此在處理能力、穩(wěn)定性、可靠性、安全性、可擴展性、可管理性等方面要求較高。

(5)其他具有數(shù)據(jù)交互功能的電子設(shè)備。

需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將

一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些

實體或操作之間存在任何這種實際的關(guān)系或者順序。

本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關(guān)的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(read-onlymemory,rom)或隨機存儲記憶體(randomaccessmemory,ram)等。

以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)以權(quán)利要求的保護范圍為準(zhǔn)。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
富锦市| 乃东县| 万安县| 双峰县| 兴国县| 永兴县| 祁连县| 澄城县| 宣武区| 呼和浩特市| 定陶县| 兴文县| 大方县| 瓮安县| 潮州市| 固始县| 竹山县| 廉江市| 长垣县| 唐河县| 乳山市| 宿松县| 海城市| 社会| 平塘县| 襄垣县| 乾安县| 军事| 新安县| 容城县| 龙里县| 外汇| 长岛县| 黄梅县| 合水县| 宕昌县| 正镶白旗| 浪卡子县| 阳曲县| 南岸区| 砀山县|