[发明专利]一种用于图形界面应用的测试方法、装置及系统有效
申请号: | 201610030995.5 | 申请日: | 2016-01-18 |
公开(公告)号: | CN105718353B | 公开(公告)日: | 2019-01-29 |
发明(设计)人: | 杨若海;黄国勇 | 申请(专利权)人: | 深圳市紫光同创电子有限公司 |
主分类号: | G06F11/30 | 分类号: | G06F11/30;G06F11/36 |
代理公司: | 深圳鼎合诚知识产权代理有限公司 44281 | 代理人: | 江婷;李发兵 |
地址: | 518057 广东省深圳市南山区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 图形界面 应用 测试 方法 装置 系统 | ||
本发明提供了一种用于图形界面应用的测试方法、装置及系统,该测试方法包括:检测到待测试应用工作时,将测试用例嵌入待测试应用;在待测试应用内,使用测试用例捕捉并记录待测试应用的输入事件;在待测试应用内,使用测试用例回放输入事件,并监控待测试应用是否发生异常。通过本发明的实施,可以嵌入应用程序的内部记录或重放一系列事件,其实现细节对于被测试程序则是不可见的,也不会对被测试程序产生任何干扰,通过记录软件窗口系统产生的事件,将记录保存在一个文件中,在下次运行软件的时候重新播放这些事件记录,同时试图捕捉是否有异常产生并报告出来,这样就达到了GUI自动测试的目的。
技术领域
本发明涉及应用测试领域,尤其涉及一种用于图形界面应用的测试方法、装置及系统。
背景技术
Qt是一种比较流行的用于C++图形用户界面框架,无论是在Windows还是在Linux操作系统上有很多的应用程序软件都是基于Qt开发的。软件在开发过程中需要不断地测试和完善,不同于批处理软件的测试,图形界面的测试对于软件测试团队来说是一个比较麻烦的问题,因为其中有很多使用者的交互操作,这些操作引起的错误通常无法很容易地重现并定位,需要人工多次尝试才能确认,这样就增加了测试人员的工作量,并且也不利于软件的自动化测试。
现有GUI(Graphical User Interface,图形界面)测试工具从外部记录被测试软件的行为并进行回访,但是由于无法获得被测软件的内部信息,因此需要借助于图像识别匹配来标记一个窗口控件,该方法在被测软件发生变化时,因为无法正确获得控件位置从而导致测试失败。
因此,本领域技术人员亟待提供一种测试方法,用于解决现有测试方法无法获得被测软件的内部信息的技术问题。
发明内容
本发明提供了一种用于图形界面应用的测试方法、装置及系统,以解决现有测试方法无法获得被测软件的内部信息的问题。
本发明提供了一种用于图形界面应用的测试方法,其包括:
检测到待测试应用工作时,将测试用例嵌入待测试应用;
在待测试应用内,使用测试用例捕捉并记录待测试应用的输入事件;
在待测试应用内,使用测试用例回放输入事件,并监控待测试应用是否发生异常。
进一步的,待测试应用为基于Qt的图形界面应用程序,操作事件包括待测试应用的窗口系统或者Qt自身产生的,用于响应用户输入操作的事件。
进一步的,测试用例为C++类。
进一步的,使用测试用例捕捉并记录发送给待测试应用的操作事件包括:利用Qt事件模型对待测试应用中所有的控件对象安装事件过滤器,截获输入事件,提取并记录输入事件属性。
进一步的,使用测试用例回放操作事件,并监控待测试应用是否发生异常包括:逐一读取记录的输入事件;确定输入事件的对象;根据对应的输入事件属性,向对象发出事件,或者,模拟事件发生;监控并记录是否有异常产生。
本发明提供了一种用于图形界面应用的测试装置,其包括:
嵌入模块,用于检测到待测试应用工作时,将测试用例嵌入待测试应用;
记录模块,用于在待测试应用内,使用测试用例捕捉并记录待测试应用的输入事件;
回放模块,用于在待测试应用内,使用测试用例回放输入事件,并监控待测试应用是否发生异常。
进一步的,待测试应用为基于Qt的图形界面应用程序,操作事件包括待测试应用的窗口系统或者Qt自身产生的,用于响应用户输入操作的事件。
进一步的,测试用例为C++类。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市紫光同创电子有限公司,未经深圳市紫光同创电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610030995.5/2.html,转载请声明来源钻瓜专利网。