Windows应用程序自动化测试关键技术设计与实现
发布时间:2022-01-19 22:40
随着敏捷编程技术的发展,应用软件在开发阶段会经历版本的快速迭代。新版本软件上线前必须进行系统的测试,自动化测试可以满足现代软件对测试速度的需求并减少测试成本。随着Windows平台下软件开发技术的发展,现有的自动化测试方案无法支持Windows应用程序种类繁多的UI框架。此外,在基于模型的自动化测试研究领域中,GUI遍历技术是GUI模型建立和动态分析的基础。现有针对Windows应用程序的自动化遍历方法研究存在GUI覆盖率不高的问题。本文针对以上Windows应用程序自动化测试中存在的关键技术问题进行深入研究。主要工作内容如下:(1)针对现有自动化测试方案对不同UI框架下Windows应用支持不足的问题,本文提出一种可以兼容不同类型Windows应用自动化测试的解决方案,该方案解决了自动化测试中控件驱动和控件识别两个关键问题。本文将控件驱动分为API驱动和图片对比驱动两大类,对不同类型的自动化测试驱动进行中间层抽象和封装,使得该方案可以兼容多种UI框架下的控件驱动。另外,针对API驱动提出基于控件路径的识别方法,针对图片对比驱动提出基于屏幕截图的控件识别方法,从而解决控件识别问题。(2...
【文章来源】:中国科学技术大学安徽省 211工程院校 985工程院校
【文章页数】:75 页
【学位级别】:硕士
【部分图文】:
控件树模型
行扫描识别即可。整个Sikuli工具由Sikuli脚本、一套可视化脚本编程API以??及Sikuli?IDE三个部分组成。因此,理论上Sikuli支持所有系统平台软件的自动??化操作。图2.2为Sikuli的技术架构图丨35】,通过SikulilDE可以编辑.sikuli为后??缀的脚本,脚本中包含截图文件和Python代码,其中Python代码在Java中的??Python解释器Jython中执行。Sikuli脚本执行模块通过JNI调用OpenCV引擎的??相关API进行图像对比操作,结合Java?Robot?API向操作系统发送系统级事件,??最后实现对用户动作的模拟。另外Sikuli官方提供非常友好的Sikuli-script.jar包??和相关API文档,通过jar包可以直接调用Sikuli中的方法进行自动化测试。结??合Sikuli和其他自动化测试框架的优点可以构建更加强大的自动化测试框架。??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??.
行扫描识别即可。整个Sikuli工具由Sikuli脚本、一套可视化脚本编程API以??及Sikuli?IDE三个部分组成。因此,理论上Sikuli支持所有系统平台软件的自动??化操作。图2.2为Sikuli的技术架构图丨35】,通过SikulilDE可以编辑.sikuli为后??缀的脚本,脚本中包含截图文件和Python代码,其中Python代码在Java中的??Python解释器Jython中执行。Sikuli脚本执行模块通过JNI调用OpenCV引擎的??相关API进行图像对比操作,结合Java?Robot?API向操作系统发送系统级事件,??最后实现对用户动作的模拟。另外Sikuli官方提供非常友好的Sikuli-script.jar包??和相关API文档,通过jar包可以直接调用Sikuli中的方法进行自动化测试。结??合Sikuli和其他自动化测试框架的优点可以构建更加强大的自动化测试框架。??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??.
【参考文献】:
期刊论文
[1]基于静态分析的Android GUI遍历方法[J]. 汤杨,曾凡平,王健康,黄心依. 计算机应用. 2016(10)
[2]Android应用程序GUI遍历的自动化方法[J]. 赵耀宗,程绍银,蒋凡. 计算机系统应用. 2015(09)
[3]基于Windows Hook的软件录制回放系统的设计和实现[J]. 王甲,姜希. 科学技术与工程. 2012(10)
博士论文
[1]图形用户界面测试中相关问题研究[D]. 钱思佑.中国科学技术大学 2010
硕士论文
[1]Android应用程序GUI自动化遍历技术研究[D]. 赵耀宗.中国科学技术大学 2015
[2]面向WinForm Control的自动化测试框架的设计与实现[D]. 张佩佩.西安电子科技大学 2009
[3]软件自动化测试技术及应用研究[D]. 应杭.浙江大学 2006
本文编号:3597695
【文章来源】:中国科学技术大学安徽省 211工程院校 985工程院校
【文章页数】:75 页
【学位级别】:硕士
【部分图文】:
控件树模型
行扫描识别即可。整个Sikuli工具由Sikuli脚本、一套可视化脚本编程API以??及Sikuli?IDE三个部分组成。因此,理论上Sikuli支持所有系统平台软件的自动??化操作。图2.2为Sikuli的技术架构图丨35】,通过SikulilDE可以编辑.sikuli为后??缀的脚本,脚本中包含截图文件和Python代码,其中Python代码在Java中的??Python解释器Jython中执行。Sikuli脚本执行模块通过JNI调用OpenCV引擎的??相关API进行图像对比操作,结合Java?Robot?API向操作系统发送系统级事件,??最后实现对用户动作的模拟。另外Sikuli官方提供非常友好的Sikuli-script.jar包??和相关API文档,通过jar包可以直接调用Sikuli中的方法进行自动化测试。结??合Sikuli和其他自动化测试框架的优点可以构建更加强大的自动化测试框架。??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??.
行扫描识别即可。整个Sikuli工具由Sikuli脚本、一套可视化脚本编程API以??及Sikuli?IDE三个部分组成。因此,理论上Sikuli支持所有系统平台软件的自动??化操作。图2.2为Sikuli的技术架构图丨35】,通过SikulilDE可以编辑.sikuli为后??缀的脚本,脚本中包含截图文件和Python代码,其中Python代码在Java中的??Python解释器Jython中执行。Sikuli脚本执行模块通过JNI调用OpenCV引擎的??相关API进行图像对比操作,结合Java?Robot?API向操作系统发送系统级事件,??最后实现对用户动作的模拟。另外Sikuli官方提供非常友好的Sikuli-script.jar包??和相关API文档,通过jar包可以直接调用Sikuli中的方法进行自动化测试。结??合Sikuli和其他自动化测试框架的优点可以构建更加强大的自动化测试框架。??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??.
【参考文献】:
期刊论文
[1]基于静态分析的Android GUI遍历方法[J]. 汤杨,曾凡平,王健康,黄心依. 计算机应用. 2016(10)
[2]Android应用程序GUI遍历的自动化方法[J]. 赵耀宗,程绍银,蒋凡. 计算机系统应用. 2015(09)
[3]基于Windows Hook的软件录制回放系统的设计和实现[J]. 王甲,姜希. 科学技术与工程. 2012(10)
博士论文
[1]图形用户界面测试中相关问题研究[D]. 钱思佑.中国科学技术大学 2010
硕士论文
[1]Android应用程序GUI自动化遍历技术研究[D]. 赵耀宗.中国科学技术大学 2015
[2]面向WinForm Control的自动化测试框架的设计与实现[D]. 张佩佩.西安电子科技大学 2009
[3]软件自动化测试技术及应用研究[D]. 应杭.浙江大学 2006
本文编号:3597695
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3597695.html