[發(fā)明專利]基于建模的web應用自動化測試方法有效
| 申請?zhí)枺?/td> | 201310560257.8 | 申請日: | 2013-11-12 |
| 公開(公告)號: | CN103678120A | 公開(公告)日: | 2014-03-26 |
| 發(fā)明(設計)人: | 楊瑾 | 申請(專利權)人: | 北京京東尚科信息技術有限公司;北京京東世紀貿(mào)易有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 北京邦信陽專利商標代理有限公司 11012 | 代理人: | 王昭林;胡冰 |
| 地址: | 100080 北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 建模 web 應用 自動化 測試 方法 | ||
技術領域
本發(fā)明涉及web測試技術,更具體地,涉及基于建模的web應用自動化測試方法。
背景技術
互聯(lián)網(wǎng)應用正逐步滲透到人們生活的各個方面,原來需要面對面處理的事務通過網(wǎng)絡即可實現(xiàn),例如網(wǎng)上繳費、購物、更換證件。將來,互聯(lián)網(wǎng)也必然會有更多的應用。因此,各個網(wǎng)站的頁面會更新非常頻繁,這也必然導致web應用測試更頻繁。雖然現(xiàn)在已經(jīng)有了web應用的自動化測試,但是由于用戶需求變化快、界面變化頻繁等特點,使web應用自動化測試的開展都面臨著腳本失敗率高,腳本維護成本高的困擾。即使是應用正式發(fā)布后也會有新需求源源不斷的加入,這些需求往往伴隨著界面或者控件的屬性隨之改變,導致需要重新設計和編寫自動測試方案。
發(fā)明內(nèi)容
針對上述問題,本發(fā)明提出一種基于建模的web應用自動化測試方法,包括:S1、建立瀏覽器,使用該瀏覽器訪問待測網(wǎng)站頁面,獲取數(shù)據(jù);S2、分析頁面,進行頁面建模,并保存至頁面建模數(shù)據(jù)文件;S3、在測試時,啟動所述瀏覽器,讀取所述頁面建模數(shù)據(jù)文件,從中獲取頁面的受測對象和測試用例,模擬用戶操作。
進一步,在S1中,該瀏覽器是可配置的,獲取的數(shù)據(jù)是用戶交互數(shù)據(jù)。
進一步,在S2中,所述頁面建模數(shù)據(jù)文件保存了受測對象的屬性以及測試用例。
進一步,在S1中,通過JEditorPane與JSpider瀏覽器訪問web站點。
進一步,在S2中,通過JSpider爬蟲引擎對站點待測試頁面進行頁面建模,選擇頁面上相應的受測對象并將數(shù)據(jù)保存至本地的頁面模型數(shù)據(jù)文件。
進一步,在S3中,使用Webdriver提供的接口啟動并控制所述瀏覽器,通過數(shù)據(jù)解析器從頁面建模數(shù)據(jù)文件中獲取頁面的受測對象和測試用例,根據(jù)測試用例的操作步驟,實現(xiàn)模擬用戶操作。
進一步,S3還包括:啟動所述瀏覽器,通過Jenkins持續(xù)集成平臺或命令行調(diào)用自動化腳本,腳本通過webdriver?API調(diào)用所述頁面建模數(shù)據(jù)文件,并在瀏覽器中執(zhí)行腳本中相應的操作。
本方法通過瀏覽器對測試頁面自動建模,并通過控制瀏覽器運行過程中調(diào)用頁面模型數(shù)據(jù),控制瀏覽器實現(xiàn)模擬用戶操作,此方法可跨瀏覽器、可跨平臺、可并行,能實現(xiàn)自動化測試從開發(fā)、執(zhí)行到維護的高效。
附圖說明
圖1為本發(fā)明的方法的一個實施例的流程圖;
圖2為圖1中的頁面建模的流程圖;
圖3為本發(fā)明的系統(tǒng)的一個實施例的結(jié)構(gòu)圖;
圖4為圖3中的自動測試過程的流程圖;
圖5為一個應用實例的一個截圖。
具體實施方式
在本發(fā)明中,“對象”指的是用戶期望在頁面中操作的對象,例如文本框、圖片、按鈕、連接等。“屬性”在html頁面源碼中,用來表示該對象的性質(zhì)和特性,通常都是以“對象名”=“值”的形式來表示。“測試用例”是包含了業(yè)務邏輯、順序、期望結(jié)果等的數(shù)據(jù)集合,是自動化測試腳本編寫的依據(jù)。
圖1為本發(fā)明的方法的一個實施例的流程圖,所述方法包括:
步驟S1、建立瀏覽器,使用該瀏覽器訪問待測頁面,其中該瀏覽器能夠抓取待測頁面的源碼。
該瀏覽器是特制的,可以用多種方式實現(xiàn)。該瀏覽器是可配置的,可展示頁面的html源碼。瀏覽器抓取的數(shù)據(jù)是頁面上的受測對象,所述受測對象可以是靜態(tài)的(例如圖片),也可以是動態(tài)的(例如用戶交互數(shù)據(jù),比如輸入框、搜索按鈕)。
有利地,所述瀏覽器能夠進行輸入、鏈接點擊等操作,還可以模擬復雜瀏覽器的功能,包括拖拽、截屏、文件上傳與下載的驗證等。更有利地,該瀏覽器能夠檢查站點的錯誤。
步驟S2、分析待測頁面的源碼,進行頁面建模,并保存至頁面模型數(shù)據(jù)文件。
頁面模型,是指自動化測試中會使用到的對象所組成的模型。
圖2顯示了如何進行頁面建模。在該步驟S2中,建模針對的是待測頁面中需要操作的對象。具體為,建模的目標是頁面中的受測對象(選擇哪些受測對象可以預先根據(jù)業(yè)務規(guī)則配置),每一個受測對象在頁面中具有固定的路徑。因此,受測對象-值(KEY-VALUE)就形成了該頁面的模型。將該受測對象-值存儲到文件中,形成頁面模型數(shù)據(jù)文件。其中,VALUE保存的是受測對象的路徑。在一個實施例中,VALUE保存的是XPATH的值。XPATH是XML路徑語言(XML?Path?Language),它是一種用來確定XML文檔中某部分位置的語言。XPATH基于XML的樹狀結(jié)構(gòu),提供在數(shù)據(jù)結(jié)構(gòu)樹中找尋節(jié)點的能力。因此,用XPATH的值可以定位受測對象在頁面中的位置。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京京東尚科信息技術有限公司;北京京東世紀貿(mào)易有限公司,未經(jīng)北京京東尚科信息技術有限公司;北京京東世紀貿(mào)易有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310560257.8/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:固態(tài)硬盤
- 下一篇:源代碼類似度評價方法以及源代碼類似度評價裝置
- 提供共享Web模塊的系統(tǒng)和方法
- 管理環(huán)球網(wǎng)網(wǎng)頁中的環(huán)球網(wǎng)媒體的系統(tǒng)及其實現(xiàn)方法
- 一種WEB業(yè)務實現(xiàn)系統(tǒng)、裝置及方法
- 高速緩存廣播信息的方法和裝置
- 基于QoS指標和Web服務輸出參數(shù)的Web服務組合方法和裝置
- Web托管審查方法、裝置及Web托管系統(tǒng)
- 用于信息處理和Web瀏覽歷史導航的方法和設備及電子裝置
- 用于將web站點轉(zhuǎn)換為目標web app站點的方法和裝置
- 用于防護WEB漏洞的方法和設備
- 一種Web攻擊報告生成方法、裝置、設備及計算機介質(zhì)





