本发明涉及gui自动化测试领域,具体提供一种gui自动化测试方法及装置。
背景技术:
1、python+selenium+unittest测试框架是业界流行的gui自动化测试框架,此框架具有功能强大、易于使用、跨平台、支持多种浏览器类型、能够模拟用户操作、完善的集成开发环境、灵活的组织和管理测试用例、脚本可复用、可扩展性强等优点,适用于各种web端和移动端应用程序的gui自动化测试。
2、但是测试人员在进行gui自动化测试时,常面临以下问题:
3、(1)重复打开浏览器:在使用selenium进行自动化测试时,往往需要每次都打开浏览器,然后加载测试页面。这个过程会花费一定的时间,而且每次都需要输入测试用例的url。
4、(2)登录状态问题:在测试过程中,如果需要登录才能访问某些页面,使用selenium可以自动填写用户名和密码,并登录到系统中。但每次登录都需要重新输入用户名和密码,而且可能会出现登录状态过期的情况。
5、(3)重复性的数据准备:在测试过程中,如果测试用例需要先准备被测数据才能进行业务操作的话,脚本调试过程中需要重复性的准备被测数据才能进行后续的业务场景操作。
6、(4)脚本运行中断需从头开始:在脚本调试过程中,中途如果出现脚本运行失败的情况,整个测试用例需重新运行,费时费力。
7、针对以上问题,接管现有浏览器的调试模式应运而生。
技术实现思路
1、本发明是针对上述现有技术的不足,提供一种实用性强的gui自动化测试方法。
2、本发明进一步的技术任务是提供一种设计合理,安全适用的gui自动化测试装置。
3、本发明解决其技术问题所采用的技术方案是:
4、一种gui自动化测试方法,首先在配置文件中打开接管现有浏览器调试模式的开关,编写基于python+selenium+unittest测试框架的gui自动化测试脚本,脚本运行或调试过程中,接管已打开的浏览器继续运行或调试。
5、进一步的,所述python+selenium+unittest测试框架已封装底层selenium相关公共方法和产品级别的公共方法。
6、进一步的,具体步骤如下:
7、s1、配置文件开启isdehugmode:y;
8、s2、首次运行脚本;
9、s3、脚本运行中断;
10、s4、脚本运行失败;
11、s5、再次运行脚本。
12、进一步的,在步骤s1中,在gui自动化测试框架的配置文件中,将接管现有浏览器调试模式功能启用:isdehugmode:y。
13、进一步的,在步骤s2中,脚本首次运行时,gui自动化测试框架将chrome浏览器以调试模式打开,浏览器调试模式指定9222端口,按照测试用例的要求进行测试。
14、进一步的,在步骤s3中,当脚本运行中断时,浏览器会保留当前运行状态,不会关闭浏览器;
15、根据中断信息的提示,注释已运行成功的代码,并修改中断位置的代码。
16、进一步的,在步骤s4中,脚本运行失败后,chrome浏览器会停留在脚本失败时的界面,不会关闭,根据脚本报错信息,将报错行之前的代码注释掉,查找报错行的报错原因,根据python ide和chrome浏览器界面,判断是程序报错还是python写法有问题,定位原因。
17、进一步的,在步骤s5中,再次运行脚本,gui框架通过9222调试端口继续接管chrome浏览器,脚本继续从中断位置向下运行。
18、一种gui自动化测试装置,包括:至少一个存储器和至少一个处理器;
19、所述至少一个存储器,用于存储机器可读程序;
20、所述至少一个处理器,用于调用所述机器可读程序,执行一种gui自动化测试方法。
21、本发明的一种gui自动化测试方法及装置和现有技术相比,具有以下突出的有益效果:
22、本发明显著提升gui自动化测试框架的脚本开发效率,减少了脚本维护过程中很多重复性的工作量,在减少脚本调试时间的同时,也提高了脚本质量。本发明实现了减少测试人员投入情况下,也可以上提高被测产品质量,降低成本,提高效益,提升企业核心竞争力。
1.一种gui自动化测试方法,其特征在于,首先在配置文件中打开接管现有浏览器调试模式的开关,编写基于python+selenium+unittest测试框架的gui自动化测试脚本,脚本运行或调试过程中,接管已打开的浏览器继续运行或调试。
2.根据权利要求1所述的一种gui自动化测试方法,其特征在于,所述python+selenium+unittest测试框架已封装底层selenium相关公共方法和产品级别的公共方法。
3.根据权利要求2所述的一种gui自动化测试方法,其特征在于,具体步骤如下:
4.根据权利要求3所述的一种gui自动化测试方法,其特征在于,在步骤s1中,在gui自动化测试框架的配置文件中,将接管现有浏览器调试模式功能启用:isdehugmode:y。
5.根据权利要求4所述的一种gui自动化测试方法,其特征在于,在步骤s2中,脚本首次运行时,gui自动化测试框架将chrome浏览器以调试模式打开,浏览器调试模式指定9222端口,按照测试用例的要求进行测试。
6.根据权利要求4所述的一种gui自动化测试方法,其特征在于,在步骤s3中,当脚本运行中断时,浏览器会保留当前运行状态,不会关闭浏览器;
7.根据权利要求4所述的一种gui自动化测试方法,其特征在于,在步骤s4中,脚本运行失败后,chrome浏览器会停留在脚本失败时的界面,不会关闭,根据脚本报错信息,将报错行之前的代码注释掉,查找报错行的报错原因,根据python ide和chrome浏览器界面,判断是程序报错还是python写法有问题,定位原因。
8.根据权利要求4所述的一种gui自动化测试方法,其特征在于,在步骤s5中,再次运行脚本,gui框架通过9222调试端口继续接管chrome浏览器,脚本继续从中断位置向下运行。
9.一种gui自动化测试装置,其特征在于,包括:至少一个存储器和至少一个处理器;