[發(fā)明專利]校正失效腳本的方法和設(shè)備在審
| 申請(qǐng)?zhí)枺?/td> | 201310532298.6 | 申請(qǐng)日: | 2013-10-30 |
| 公開(公告)號(hào): | CN104598374A | 公開(公告)日: | 2015-05-06 |
| 發(fā)明(設(shè)計(jì))人: | 邢振宇;涂子琰;王夕寧;張騏;孔毅 | 申請(qǐng)(專利權(quán))人: | 國(guó)際商業(yè)機(jī)器公司 |
| 主分類號(hào): | G06F11/36 | 分類號(hào): | G06F11/36 |
| 代理公司: | 中國(guó)國(guó)際貿(mào)易促進(jìn)委員會(huì)專利商標(biāo)事務(wù)所 11038 | 代理人: | 邊海梅 |
| 地址: | 美國(guó)*** | 國(guó)省代碼: | 美國(guó);US |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 校正 失效 腳本 方法 設(shè)備 | ||
技術(shù)領(lǐng)域
本發(fā)明總體上涉及web應(yīng)用的領(lǐng)域,特別地,涉及在web應(yīng)用的測(cè)試領(lǐng)域中校正失效腳本的方法和設(shè)備。
背景技術(shù)
隨著web應(yīng)用的流行,更高效的web應(yīng)用測(cè)試變得越來越重要。具體而言,無論是在功能測(cè)試還是性能測(cè)試中,更高效的web應(yīng)用測(cè)試自動(dòng)化變得越來越重要。通常的方法是利用現(xiàn)有的web應(yīng)用自動(dòng)化測(cè)試工具,例如RPT(Rational?Performance?Tester)、Silk?Performer、LoadRunner,來生成自動(dòng)化測(cè)試腳本(在本文中簡(jiǎn)稱“腳本”),以測(cè)試web應(yīng)用。然而,腳本通常包括由后端系統(tǒng)支持的場(chǎng)景信息。在當(dāng)前的開發(fā)模型中,web應(yīng)用對(duì)于不同的架構(gòu)頻繁地更新,這經(jīng)常會(huì)使得現(xiàn)有的腳本不再有效。此外,研究表明,大約70%至80%的腳本失效是由無效的數(shù)據(jù)關(guān)聯(lián)引起的。
以下將使用顧客登錄到在線商店購(gòu)物的場(chǎng)景為例說明數(shù)據(jù)關(guān)聯(lián)以及數(shù)據(jù)關(guān)聯(lián)無效的情形。
假定顧客登陸到在線商店購(gòu)買產(chǎn)品。以下參照?qǐng)D7來描述該情景。對(duì)于web應(yīng)用和服務(wù)器來說,當(dāng)顧客選擇物品并且點(diǎn)擊“添加到購(gòu)物車”按鈕時(shí),將生成添加到購(gòu)物車請(qǐng)求(在圖7中被示出為URL),并且這一請(qǐng)求被發(fā)送到服務(wù)器。在后端生成針對(duì)這一操作的訂單ID(orderId)。服務(wù)器生成針對(duì)該請(qǐng)求的響應(yīng)(例如,圖7中所示的添加到購(gòu)物車請(qǐng)求的響應(yīng))、并且在該響應(yīng)中顯示所生成的訂單ID,例如在該示例中為10503。
在用戶選擇完需要購(gòu)買的物品,繼而通過點(diǎn)擊“結(jié)賬”按鈕而進(jìn)行結(jié)賬時(shí),將生成結(jié)賬請(qǐng)求(在圖7中被示出為URL),并且這一請(qǐng)求被發(fā)送給服務(wù)器。服務(wù)器然后生成針對(duì)這一請(qǐng)求的響應(yīng),在該響應(yīng)中需要使用先前生成的訂單ID。也就是說,結(jié)賬請(qǐng)求中的訂單ID需要依賴于針對(duì)添加到購(gòu)物車請(qǐng)求生成的響應(yīng)中的訂單ID,以使得顧客能夠正確地完成其購(gòu)物流程。
在使用自動(dòng)腳本來模擬顧客的上述操作時(shí),首先,測(cè)試工具捕獲上述的添加到購(gòu)物車請(qǐng)求及其響應(yīng)。然后,測(cè)試工具將后續(xù)結(jié)賬請(qǐng)求需要使用到的動(dòng)態(tài)變化的變量,在本示例中例如為訂單ID,創(chuàng)建為引用。此時(shí),為該引用生成正則表達(dá)式,使得這一引用(在該示例中為訂單ID)的值可以作為關(guān)鍵參數(shù)之一被轉(zhuǎn)發(fā)到之后的結(jié)賬請(qǐng)求。使用所生成的正則表達(dá)式,可以從添加到購(gòu)物車請(qǐng)求的響應(yīng)內(nèi)容中過濾出想要獲取的特定部分,在該示例中例如為訂單ID。繼而在生成針對(duì)后續(xù)結(jié)賬請(qǐng)求的響應(yīng)時(shí),可以使用該正則表達(dá)式獲得針對(duì)引用訂單ID的值,例如為10503,以生成結(jié)賬請(qǐng)求的正確響應(yīng)。在此,將需要為后續(xù)請(qǐng)求以及其響應(yīng)使用的值對(duì)應(yīng)的變量(在本示例中例如為訂單ID)建立引用(此時(shí),生成正則表達(dá)式),然后將該引用與后續(xù)請(qǐng)求中的參數(shù)關(guān)聯(lián)的完整過程稱為數(shù)據(jù)關(guān)聯(lián)。在本文中,為方便起見,以正則表達(dá)式表示數(shù)據(jù)關(guān)聯(lián)。
然而,在web應(yīng)用領(lǐng)域中,經(jīng)常出現(xiàn)如下情形。例如,web應(yīng)用的開發(fā)人員修改了源代碼中的元素名稱。例如,開發(fā)人員將元素名稱從“orderId”修改為“ord_Id”時(shí)。以下將參看圖8描述這種情況。在測(cè)試工具使用先前錄制的腳本來進(jìn)行web應(yīng)用的測(cè)試時(shí),先前錄制的腳本中的數(shù)據(jù)關(guān)聯(lián)將變得無效,這是由于引用的名稱已經(jīng)從“orderId”修改為“ord_Id”,因此,使用之前生成的正則表達(dá)式<orderld>([0-9]+)</orderld>,不能獲得引用(訂單ID)的正確值,如圖8所示。也就是說,利用先前錄制的腳本中的數(shù)據(jù)關(guān)聯(lián),將只能為引用(訂單ID)獲得空值,這將使得利用該引用的值來生成響應(yīng)的結(jié)賬請(qǐng)求不能得到正確的值,從而服務(wù)器為結(jié)賬請(qǐng)求生成正確的結(jié)賬響應(yīng)。在這種情況下,由于發(fā)生了由于無效的數(shù)據(jù)關(guān)聯(lián)導(dǎo)致的腳本失效,從而使得測(cè)試工具不能利用該先前錄制而現(xiàn)在已經(jīng)失效的腳本來測(cè)試web應(yīng)用。
在發(fā)生如上所述的腳本失效時(shí),現(xiàn)有的測(cè)試工具,例如RPT、Silk?Performer、LoadRunner等一般需要重新錄制腳本,以解決導(dǎo)致很多問題的改變。具體而言,現(xiàn)有方案將需要重新錄制腳本,并且重新編寫腳本的失效部分,從而使得整個(gè)測(cè)試腳本和場(chǎng)景能夠在更新的架構(gòu)上成功完成。現(xiàn)有方案的挑戰(zhàn)在于,需要具有豐富的腳本診斷和定位技術(shù)的腳本維護(hù)工程師一步一步地理解失效場(chǎng)景、標(biāo)識(shí)腳本問題、然后重新錄制并且重新編寫腳本,這將耗費(fèi)大量的時(shí)間。
因此,需要一種有效的失效腳本校正方法,以克服現(xiàn)有技術(shù)的上述缺陷。
發(fā)明內(nèi)容
本發(fā)明的一個(gè)目的在于,在發(fā)生由于無效的數(shù)據(jù)關(guān)聯(lián)導(dǎo)致的腳本失效時(shí),找到與無效的數(shù)據(jù)關(guān)聯(lián)對(duì)應(yīng)的無效引用的正確值,以使得失效腳本能夠正確運(yùn)行。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于國(guó)際商業(yè)機(jī)器公司,未經(jīng)國(guó)際商業(yè)機(jī)器公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310532298.6/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F11-00 錯(cuò)誤檢測(cè);錯(cuò)誤校正;監(jiān)控
G06F11-07 .響應(yīng)錯(cuò)誤的產(chǎn)生,例如,容錯(cuò)
G06F11-22 .在準(zhǔn)備運(yùn)算或者在空閑時(shí)間期間內(nèi),通過測(cè)試作故障硬件的檢測(cè)或定位
G06F11-28 .借助于檢驗(yàn)標(biāo)準(zhǔn)程序或通過處理作錯(cuò)誤檢測(cè)、錯(cuò)誤校正或監(jiān)控
G06F11-30 .監(jiān)控
G06F11-36 .通過軟件的測(cè)試或調(diào)試防止錯(cuò)誤
- 備用線分配裝置、存儲(chǔ)器修補(bǔ)裝置、備用線分配方法、存儲(chǔ)器制造方法和程序
- 車輛失效分析系統(tǒng)、車輛失效分析設(shè)備及車輛失效分析方法
- 失效檢測(cè)方法以及失效檢測(cè)裝置
- 電子產(chǎn)品失效分析方法
- 元器件失效分析專家系統(tǒng)中失效分析流程構(gòu)建方法及系統(tǒng)
- 基于失效機(jī)理的元器件FMEA分析方法與系統(tǒng)
- 關(guān)聯(lián)失效影響下的頁(yè)巖氣壓裂管柱風(fēng)險(xiǎn)排序方法及裝置
- 材料失效分析方法
- 產(chǎn)品失效知識(shí)庫(kù)建立方法與失效分析方法、裝置、介質(zhì)
- 功率器件的失效分析方法
- 腳本處理方法及裝置
- 一種實(shí)現(xiàn)腳本引擎的系統(tǒng)及方法
- 代理自動(dòng)配置腳本的處理方法及代理自動(dòng)配置腳本服務(wù)器
- 一種腳本執(zhí)行方法、裝置及計(jì)算設(shè)備
- 腳本轉(zhuǎn)換方法、裝置、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)
- 性能測(cè)試平臺(tái)腳本存儲(chǔ)方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 一種實(shí)現(xiàn)測(cè)試腳本驗(yàn)證的方法及系統(tǒng)
- 結(jié)構(gòu)化查詢語言腳本審查方法及相關(guān)設(shè)備
- 基于FitNesse框架的數(shù)據(jù)驅(qū)動(dòng)腳本庫(kù)的方法、系統(tǒng)及介質(zhì)
- 一種腳本審計(jì)方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)庫(kù)讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





