Windows應(yīng)用程序自動(dòng)化測試關(guān)鍵技術(shù)設(shè)計(jì)與實(shí)現(xiàn)
發(fā)布時(shí)間:2022-01-19 22:40
隨著敏捷編程技術(shù)的發(fā)展,應(yīng)用軟件在開發(fā)階段會(huì)經(jīng)歷版本的快速迭代。新版本軟件上線前必須進(jìn)行系統(tǒng)的測試,自動(dòng)化測試可以滿足現(xiàn)代軟件對(duì)測試速度的需求并減少測試成本。隨著Windows平臺(tái)下軟件開發(fā)技術(shù)的發(fā)展,現(xiàn)有的自動(dòng)化測試方案無法支持Windows應(yīng)用程序種類繁多的UI框架。此外,在基于模型的自動(dòng)化測試研究領(lǐng)域中,GUI遍歷技術(shù)是GUI模型建立和動(dòng)態(tài)分析的基礎(chǔ),F(xiàn)有針對(duì)Windows應(yīng)用程序的自動(dòng)化遍歷方法研究存在GUI覆蓋率不高的問題。本文針對(duì)以上Windows應(yīng)用程序自動(dòng)化測試中存在的關(guān)鍵技術(shù)問題進(jìn)行深入研究。主要工作內(nèi)容如下:(1)針對(duì)現(xiàn)有自動(dòng)化測試方案對(duì)不同UI框架下Windows應(yīng)用支持不足的問題,本文提出一種可以兼容不同類型Windows應(yīng)用自動(dòng)化測試的解決方案,該方案解決了自動(dòng)化測試中控件驅(qū)動(dòng)和控件識(shí)別兩個(gè)關(guān)鍵問題。本文將控件驅(qū)動(dòng)分為API驅(qū)動(dòng)和圖片對(duì)比驅(qū)動(dòng)兩大類,對(duì)不同類型的自動(dòng)化測試驅(qū)動(dòng)進(jìn)行中間層抽象和封裝,使得該方案可以兼容多種UI框架下的控件驅(qū)動(dòng)。另外,針對(duì)API驅(qū)動(dòng)提出基于控件路徑的識(shí)別方法,針對(duì)圖片對(duì)比驅(qū)動(dòng)提出基于屏幕截圖的控件識(shí)別方法,從而解決控件識(shí)別問題。(2...
【文章來源】:中國科學(xué)技術(shù)大學(xué)安徽省 211工程院校 985工程院校
【文章頁數(shù)】:75 頁
【學(xué)位級(jí)別】:碩士
【部分圖文】:
控件樹模型
行掃描識(shí)別即可。整個(gè)Sikuli工具由Sikuli腳本、一套可視化腳本編程API以??及Sikuli?IDE三個(gè)部分組成。因此,理論上Sikuli支持所有系統(tǒng)平臺(tái)軟件的自動(dòng)??化操作。圖2.2為Sikuli的技術(shù)架構(gòu)圖丨35】,通過SikulilDE可以編輯.sikuli為后??綴的腳本,腳本中包含截圖文件和Python代碼,其中Python代碼在Java中的??Python解釋器Jython中執(zhí)行。Sikuli腳本執(zhí)行模塊通過JNI調(diào)用OpenCV引擎的??相關(guān)API進(jìn)行圖像對(duì)比操作,結(jié)合Java?Robot?API向操作系統(tǒng)發(fā)送系統(tǒng)級(jí)事件,??最后實(shí)現(xiàn)對(duì)用戶動(dòng)作的模擬。另外Sikuli官方提供非常友好的Sikuli-script.jar包??和相關(guān)API文檔,通過jar包可以直接調(diào)用Sikuli中的方法進(jìn)行自動(dòng)化測試。結(jié)??合Sikuli和其他自動(dòng)化測試框架的優(yōu)點(diǎn)可以構(gòu)建更加強(qiáng)大的自動(dòng)化測試框架。??A? ̄ ̄^????.png??7?.sikuli?M?edit??Sikuli?IDE??use??3"??e?1、士rer??import?(auto)?Java?Runtime??Sikuli?Script?Env.ronment??Sikuli.py??l?郵咖納?Si)culiTest.py??|?import??Java?API?SiXuliScript.java??.
行掃描識(shí)別即可。整個(gè)Sikuli工具由Sikuli腳本、一套可視化腳本編程API以??及Sikuli?IDE三個(gè)部分組成。因此,理論上Sikuli支持所有系統(tǒng)平臺(tái)軟件的自動(dòng)??化操作。圖2.2為Sikuli的技術(shù)架構(gòu)圖丨35】,通過SikulilDE可以編輯.sikuli為后??綴的腳本,腳本中包含截圖文件和Python代碼,其中Python代碼在Java中的??Python解釋器Jython中執(zhí)行。Sikuli腳本執(zhí)行模塊通過JNI調(diào)用OpenCV引擎的??相關(guān)API進(jìn)行圖像對(duì)比操作,結(jié)合Java?Robot?API向操作系統(tǒng)發(fā)送系統(tǒng)級(jí)事件,??最后實(shí)現(xiàn)對(duì)用戶動(dòng)作的模擬。另外Sikuli官方提供非常友好的Sikuli-script.jar包??和相關(guān)API文檔,通過jar包可以直接調(diào)用Sikuli中的方法進(jìn)行自動(dòng)化測試。結(jié)??合Sikuli和其他自動(dòng)化測試框架的優(yōu)點(diǎn)可以構(gòu)建更加強(qiáng)大的自動(dòng)化測試框架。??A? ̄ ̄^????.png??7?.sikuli?M?edit??Sikuli?IDE??use??3"??e?1、士rer??import?(auto)?Java?Runtime??Sikuli?Script?Env.ronment??Sikuli.py??l?郵咖納?Si)culiTest.py??|?import??Java?API?SiXuliScript.java??.
【參考文獻(xiàn)】:
期刊論文
[1]基于靜態(tài)分析的Android GUI遍歷方法[J]. 湯楊,曾凡平,王健康,黃心依. 計(jì)算機(jī)應(yīng)用. 2016(10)
[2]Android應(yīng)用程序GUI遍歷的自動(dòng)化方法[J]. 趙耀宗,程紹銀,蔣凡. 計(jì)算機(jī)系統(tǒng)應(yīng)用. 2015(09)
[3]基于Windows Hook的軟件錄制回放系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)[J]. 王甲,姜希. 科學(xué)技術(shù)與工程. 2012(10)
博士論文
[1]圖形用戶界面測試中相關(guān)問題研究[D]. 錢思佑.中國科學(xué)技術(shù)大學(xué) 2010
碩士論文
[1]Android應(yīng)用程序GUI自動(dòng)化遍歷技術(shù)研究[D]. 趙耀宗.中國科學(xué)技術(shù)大學(xué) 2015
[2]面向WinForm Control的自動(dòng)化測試框架的設(shè)計(jì)與實(shí)現(xiàn)[D]. 張佩佩.西安電子科技大學(xué) 2009
[3]軟件自動(dòng)化測試技術(shù)及應(yīng)用研究[D]. 應(yīng)杭.浙江大學(xué) 2006
本文編號(hào):3597695
【文章來源】:中國科學(xué)技術(shù)大學(xué)安徽省 211工程院校 985工程院校
【文章頁數(shù)】:75 頁
【學(xué)位級(jí)別】:碩士
【部分圖文】:
控件樹模型
行掃描識(shí)別即可。整個(gè)Sikuli工具由Sikuli腳本、一套可視化腳本編程API以??及Sikuli?IDE三個(gè)部分組成。因此,理論上Sikuli支持所有系統(tǒng)平臺(tái)軟件的自動(dòng)??化操作。圖2.2為Sikuli的技術(shù)架構(gòu)圖丨35】,通過SikulilDE可以編輯.sikuli為后??綴的腳本,腳本中包含截圖文件和Python代碼,其中Python代碼在Java中的??Python解釋器Jython中執(zhí)行。Sikuli腳本執(zhí)行模塊通過JNI調(diào)用OpenCV引擎的??相關(guān)API進(jìn)行圖像對(duì)比操作,結(jié)合Java?Robot?API向操作系統(tǒng)發(fā)送系統(tǒng)級(jí)事件,??最后實(shí)現(xiàn)對(duì)用戶動(dòng)作的模擬。另外Sikuli官方提供非常友好的Sikuli-script.jar包??和相關(guān)API文檔,通過jar包可以直接調(diào)用Sikuli中的方法進(jìn)行自動(dòng)化測試。結(jié)??合Sikuli和其他自動(dòng)化測試框架的優(yōu)點(diǎn)可以構(gòu)建更加強(qiáng)大的自動(dòng)化測試框架。??A? ̄ ̄^????.png??7?.sikuli?M?edit??Sikuli?IDE??use??3"??e?1、士rer??import?(auto)?Java?Runtime??Sikuli?Script?Env.ronment??Sikuli.py??l?郵咖納?Si)culiTest.py??|?import??Java?API?SiXuliScript.java??.
行掃描識(shí)別即可。整個(gè)Sikuli工具由Sikuli腳本、一套可視化腳本編程API以??及Sikuli?IDE三個(gè)部分組成。因此,理論上Sikuli支持所有系統(tǒng)平臺(tái)軟件的自動(dòng)??化操作。圖2.2為Sikuli的技術(shù)架構(gòu)圖丨35】,通過SikulilDE可以編輯.sikuli為后??綴的腳本,腳本中包含截圖文件和Python代碼,其中Python代碼在Java中的??Python解釋器Jython中執(zhí)行。Sikuli腳本執(zhí)行模塊通過JNI調(diào)用OpenCV引擎的??相關(guān)API進(jìn)行圖像對(duì)比操作,結(jié)合Java?Robot?API向操作系統(tǒng)發(fā)送系統(tǒng)級(jí)事件,??最后實(shí)現(xiàn)對(duì)用戶動(dòng)作的模擬。另外Sikuli官方提供非常友好的Sikuli-script.jar包??和相關(guān)API文檔,通過jar包可以直接調(diào)用Sikuli中的方法進(jìn)行自動(dòng)化測試。結(jié)??合Sikuli和其他自動(dòng)化測試框架的優(yōu)點(diǎn)可以構(gòu)建更加強(qiáng)大的自動(dòng)化測試框架。??A? ̄ ̄^????.png??7?.sikuli?M?edit??Sikuli?IDE??use??3"??e?1、士rer??import?(auto)?Java?Runtime??Sikuli?Script?Env.ronment??Sikuli.py??l?郵咖納?Si)culiTest.py??|?import??Java?API?SiXuliScript.java??.
【參考文獻(xiàn)】:
期刊論文
[1]基于靜態(tài)分析的Android GUI遍歷方法[J]. 湯楊,曾凡平,王健康,黃心依. 計(jì)算機(jī)應(yīng)用. 2016(10)
[2]Android應(yīng)用程序GUI遍歷的自動(dòng)化方法[J]. 趙耀宗,程紹銀,蔣凡. 計(jì)算機(jī)系統(tǒng)應(yīng)用. 2015(09)
[3]基于Windows Hook的軟件錄制回放系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)[J]. 王甲,姜希. 科學(xué)技術(shù)與工程. 2012(10)
博士論文
[1]圖形用戶界面測試中相關(guān)問題研究[D]. 錢思佑.中國科學(xué)技術(shù)大學(xué) 2010
碩士論文
[1]Android應(yīng)用程序GUI自動(dòng)化遍歷技術(shù)研究[D]. 趙耀宗.中國科學(xué)技術(shù)大學(xué) 2015
[2]面向WinForm Control的自動(dòng)化測試框架的設(shè)計(jì)與實(shí)現(xiàn)[D]. 張佩佩.西安電子科技大學(xué) 2009
[3]軟件自動(dòng)化測試技術(shù)及應(yīng)用研究[D]. 應(yīng)杭.浙江大學(xué) 2006
本文編號(hào):3597695
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/3597695.html
最近更新
教材專著