[发明专利]一种自动化测试的运行方法在审
申请号: | 201710507840.0 | 申请日: | 2017-06-28 |
公开(公告)号: | CN107315686A | 公开(公告)日: | 2017-11-03 |
发明(设计)人: | 李瑞丰 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京集佳知识产权代理有限公司11227 | 代理人: | 罗满 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 自动化 测试 运行 方法 | ||
技术领域
本发明涉及自动化测试技术领域,特别是涉及一种自动化测试的运行方法。
背景技术
在CI/CD流行的今天,软件项目/产品的自动化测试是一种大的趋势。通过编写自动化测试用例并持续的运行,能够很好的替代之前项目中的测试所需的人力,并且良好的测试用例同时能规避人工测试引入的不确定因素(如人为失误)等,从而能稳定的保障相关的项目/产品的交付质量。现有的自动化用例管理框架比较多,如cucumber,testNG等,但是都是比较通用的自动化测试用例管理框架,距离真正的在业务上的实践应用尚有一定的距离。比如,在实际的用例运行中,会存在类似如下的问题:
测试用例数量很多,且用例之间存在互相依赖关系,这会导致后运行的用例是否成功严重依赖于前面用例的运行结果,增加了调试的复杂度和测试运行结果的的耦合度;测试用例对运行的环境有不同的要求,不同的用例需要运行在不同的测试环境之上;测试用例运行的准备过程中,有很多重复的步骤,增加了相关代码的重复度;如果环境在某个时间内因为客观因素不能使用,会影响所有在该环境上运行的测试用例,导致其运行失败;测试环境有时需要根据需求灵活增加或减少,需要支持实时的配置和修改;当同时在多个指定测试环境运行测试用例时,由于测试用例执行所需的时间不同,可能存在:某些环境上用例运行完成,但是某些环境上存在用例正在排队等待被运行的情况,增加了测试运行的时间。
发明内容
本发明的目的是提供一种自动化测试的运行方法,以实现有效利用测试环境,节省测试时间。
为解决上述技术问题,本发明提供一种自动化测试的运行方法,应用于TestNG框架,包括:
在TestNG框架中根据配置文件加载本次需要运行的测试用例类,从测试用例中选择一个测试用例进行执行;
利用测试用例从环境池中获取对应的测试环境,若测试环境获取成功,采用装饰者模式指定所需的高级测试环境;
执行基本测试环境和高级测试环境的准备工作;
执行测试用例中定义的用例测试逻辑,完成实际的逻辑测试。
优选的,所述利用测试用例从环境池中获取对应的测试环境之后,还包括:
若测试环境获取失败,阻塞当前测试用例所在线程。
优选的,所述执行测试用例中定义的用例测试逻辑,完成实际的逻辑测试之后,还包括:
按照高级测试环境的装饰顺序,倒序执行高级测试环境的还原初始状态逻辑;
执行基础测试环境的还原初始状态逻辑,完成测试环境的清理。
优选的,所述执行基础测试环境的还原初始状态逻辑,完成测试环境的清理之后,还包括:
若测试环境清理成功,调用环境池的正常释放环境接口,释放当前测试用例所持有的基本测试环境;
若测试环境清理失败,调用环境池的异常释放环境接口。
优选的,所述TestNG框架中包含环境池、测试用例对象、基本测试环境和高级测试环境。
优选的,所述TestNG框架还包括用例管理模块,用于测试用例的生命周期管理。
优选的,所述TestNG框架还包括环境池管理模块,用于基本测试环境的生命周期管理。
本发明所提供的一种自动化测试的运行方法,应用于TestNG框架,在TestNG框架中根据配置文件加载本次需要运行的测试用例类,从测试用例中选择一个测试用例进行执行;利用测试用例从环境池中获取对应的测试环境,若测试环境获取成功,采用装饰者模式指定所需的高级测试环境;执行基本测试环境和高级测试环境的准备工作;执行测试用例中定义的用例测试逻辑,完成实际的逻辑测试。可见,本方法基于TestNG,完成了实际生产应用中,对自动化测试用例管理的需求,解决了单独使用TestNG所不能解决的用例解耦问题,环境管理与按需分配的需求,实现了自动化用例与环境的解耦,自动化用例之间的解耦,有效利用了有限的测试环境,节省了测试时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明所提供的一种自动化测试的运行方法的流程图。
具体实施方式
本发明的核心是提供一种自动化测试的运行方法,以实现有效利用测试环境,节省测试时间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710507840.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种非侵入式程序实时调试方法
- 下一篇:代码自动发布方法