[發(fā)明專利]基于windows操作系統(tǒng)下的復(fù)雜控件測試方法在審
| 申請?zhí)枺?/td> | 201310483453.X | 申請日: | 2013-10-16 |
| 公開(公告)號: | CN104572428A | 公開(公告)日: | 2015-04-29 |
| 發(fā)明(設(shè)計)人: | 陸璐 | 申請(專利權(quán))人: | 陸璐 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 常州佰業(yè)騰飛專利代理事務(wù)所(普通合伙) 32231 | 代理人: | 金輝 |
| 地址: | 210000 江*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 windows 操作系統(tǒng) 復(fù)雜 控件 測試 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及基于windows操作系統(tǒng)下的復(fù)雜控件測試方法。
背景技術(shù)
近年來,隨著計算機(jī)的普及,軟件系統(tǒng)已經(jīng)深入到生活的各個方面,從普通的計算機(jī)軟件,到銀行或超市的終端系統(tǒng),甚至到手機(jī)的軟件系統(tǒng)。對軟件質(zhì)量的要求也在不斷提高,但現(xiàn)實(shí)中軟件系統(tǒng)的質(zhì)量和穩(wěn)定性卻不盡人意,采用有效的軟件測試是保證軟件質(zhì)量、提高軟件可靠性的重要手段。現(xiàn)代化的軟件大都是圖形界面的,即處于windows環(huán)境下,圖形界面使計算機(jī)系統(tǒng)變得容易使用,但這也給測試帶來了極大的挑戰(zhàn)。錄制/回放是大多數(shù)現(xiàn)代GUI自動化測試工具采用的模式,但現(xiàn)有一些產(chǎn)品和測試工具局限性很強(qiáng),只能使用于某種程序語言或者某種開發(fā)平臺,目前流行的測試驅(qū)動工具局限平臺框架,某些只能用于老的非托管程序,某些用于托管程序,且對復(fù)雜控件無法自動化識別,只能手工修改腳本進(jìn)行測試。
發(fā)明內(nèi)容
本發(fā)明的目的是解決上述存在的問題,提供能自動識別并錄制功能測試腳本,同時對復(fù)雜非標(biāo)準(zhǔn)控件能夠自動化進(jìn)行錄制和識別的一種基于windows操作系統(tǒng)下的復(fù)雜控件測試方法。
本發(fā)明的目的是以如下方式實(shí)現(xiàn)的:一種基于windows操作系統(tǒng)下的復(fù)雜控件測試方法,包括包括錄制模塊和回放模塊,所述回放模塊包括腳本及操作控件的類庫和測試運(yùn)行模塊,具體操作如下:①錄制模塊要識別windows操作系統(tǒng)下應(yīng)用程序的狀態(tài)并捕獲用戶的行為,并記錄用戶操作應(yīng)用程序時的有效動作,并生成測試腳本;
②錄制模塊輸出腳本后,通過腳本及操作控件的類庫提供的操作控件的函數(shù),將腳本中的操作控件的函數(shù)依靠操作控件的類庫,轉(zhuǎn)化為以DLL的形式;
③所述測試運(yùn)行模塊將測試腳本組裝成能夠通過編譯的代碼,并具有屏幕狀態(tài)捕捉的功能,以對比測試運(yùn)行的結(jié)果與預(yù)期的結(jié)果;最后自動運(yùn)行生成的測試腳本,執(zhí)行功能測試。
上述的基于windows操作系統(tǒng)下的復(fù)雜控件測試方法,所述錄制模塊包括對非托管應(yīng)用程序的錄制模塊和對托管應(yīng)用程序的錄制模塊。
上述的基于windows操作系統(tǒng)下的復(fù)雜控件測試方法,所述步驟①中錄制模塊為對非托管應(yīng)用程序的錄制模塊,具體為用來錄制用戶動作的依據(jù)有被測的GUI程序發(fā)出的WinEvents和監(jiān)控到的鼠標(biāo)鍵盤操作,所述錄制模塊可分程序狀態(tài)捕獲模塊和動作分析模塊,所述捕獲程序狀態(tài)模塊截獲GUI程序發(fā)出的事件和監(jiān)控鼠標(biāo)鍵盤的狀態(tài),它所產(chǎn)生的輸出是鼠標(biāo)鍵盤消息序列和事件序列,所述動作分析模塊則接收程序狀態(tài)捕獲模塊的輸入,分析鼠標(biāo)鍵盤消息序列和事件序列,確定用戶做了何種操作并生成腳本。
上述的基于windows操作系統(tǒng)下的復(fù)雜控件測試方法,所述動作分析模塊對標(biāo)準(zhǔn)控件由時間序列分析用戶的操作,而對于非標(biāo)準(zhǔn)控件則根據(jù)鼠標(biāo)鍵盤消息序列分析用戶的操作。
上述的基于windows操作系統(tǒng)下的復(fù)雜控件測試方法,所述步驟①中錄制模塊為對托管應(yīng)用程序的錄制模塊,具體為所述錄制模塊包括初始化模塊和動作捕獲模塊,所述初始化模塊負(fù)責(zé)做錄制前的準(zhǔn)備工作:將被測的程序集在錄制模塊所在的應(yīng)用程序域中運(yùn)行起來,所述動作捕獲模塊主要負(fù)責(zé)發(fā)現(xiàn)用戶的操作并記錄腳本。
上述的一種基于windows操作系統(tǒng)下的復(fù)雜控件測試方法,在每一個WinEvent發(fā)生的時候,事件回調(diào)函數(shù)中的參數(shù)hWnd表示本次事件是在哪個GUI窗口上發(fā)生的,根據(jù)這個句柄調(diào)用Win32函數(shù)GetClassName可得到GUI窗口的類,依據(jù)類名便可判斷出這個GUI窗口是否是標(biāo)準(zhǔn)控件;然后分別調(diào)用不同的模塊來分析用戶的操作。
本發(fā)明的優(yōu)點(diǎn):1、本發(fā)明是通過反射角度實(shí)現(xiàn)腳本錄制與回放,能對復(fù)雜控件以簡潔高效地方式來標(biāo)識進(jìn)行描述和識別,避免以前自動化功能測試工具手工修改測試腳本,極大加重了測試工程師工作復(fù)雜性和工作量;其次使用了統(tǒng)一的腳本語言,避免不同環(huán)境,不同平臺腳本語言生成不一致問題,最后本測試方法還能兼顧托管和非拖管開發(fā)平臺,提高測試工作效率;
2、本發(fā)明研究的是各種桌面軟件開發(fā)環(huán)境下復(fù)雜控件測試方法設(shè)計,實(shí)現(xiàn)對托管的和非托管的應(yīng)用程序進(jìn)行自動化測試。在實(shí)現(xiàn)錄制回放模塊的時候,使用內(nèi)嵌于操作系統(tǒng)中的技術(shù),使得工具具有相當(dāng)?shù)倪m應(yīng)性。使用通用的計算機(jī)語言C#作為腳本語言,借助C#語言的功能,開發(fā)出功能強(qiáng)大的腳本。本發(fā)明使用具有不變性的屬性來標(biāo)識控件,哪怕控件的位置移動后,不用改動腳本仍然能定位到控件。這不但使得標(biāo)識控件變得簡單,并且能高效地查找定位控件。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于陸璐;,未經(jīng)陸璐;許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310483453.X/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 檢測Windows系統(tǒng)已知漏洞的方法和系統(tǒng)
- 一種對主機(jī)進(jìn)行管控的方法及系統(tǒng)
- 一種基于windows服務(wù)控制器的系統(tǒng)自動運(yùn)行方法
- 處理windows update彈窗出現(xiàn)的方法和系統(tǒng)
- 檢測系統(tǒng)中已安裝應(yīng)用的方法和客戶端
- 一種Windows Phone手機(jī)數(shù)據(jù)的鏡像方法
- 在Windows下對Linux系統(tǒng)中無線通訊模塊調(diào)試數(shù)據(jù)抓取方法和系統(tǒng)
- 一種實(shí)現(xiàn)Windows系統(tǒng)自動化安裝的系統(tǒng)及方法
- 一種基于Windows To Go的增強(qiáng)方法及系統(tǒng)
- 一種批量控制windows快速部署的工具及方法





