Robot Framework实践分享
第二篇:RF实践-
Testing In DevOps
引
言
在第一篇的《RF实践-账务下一代》中分享了账务下一代对RF自动化测试框架的设计思路。本文将分享如何将本地已经搭建好的单机版RF框架,做快速的能力复制给项目组成员使用,并最终将测试、开发人员已经编写好自动化测试用例,整合到服务器的整合版RF上,进行DevOps流水线贯通。
一、如何快速的能力复制
由于RobotFramework单机版、大量版本不一致的第三方库、底层的公共关键字对所有人可见等天然缺陷影响了它的传播效率。所以它无法像自研BS架构的自动化测试工具那样可以提供一个统一的入口让大家方便的使用,并对登入人员做权限控制。而这些又是自动化测试传播的“必需品”,对于这些问题可以通过下述几点来进行规避:
打包统一的母版
代码统一受控
申请RF专用服务器
打包统一的母版
由于第三方库都是通过Python来安装,且都是装在Python目录下,所以我们可以直接将这个母版本的Python打包,其他需要用RF的同学只需要安装同版本的Python然后把打包的母版本覆盖到本地来就可以了。
这个操作实际上是同时解决了版本一致性和安装效率的问题。第三方库需要一个个连上外网去安装,且不同时期安装的版本会不一样。这个打包母版的方法大大提升了传播效率。
代码统一受控
为自动化测试系统分配一个独立的配置空间,将所有的自动化测试用例按照
功能类型分目录存放。测试人员本地调试通过自动化测试用例及时提交配置库,避免一次性大量提交代码冲突,规范的提交可以减少代码合并的消耗。
公共关键字受控,由于底层公共关键字影响了大量的自动化测试用例的执行,所以要将这些关键字的权限集中在自动化测试系统的维护人员手上,避免关键字被改错影响正常的自动化运行。
申请RF专用服务器
申请专用的RF服务器有几个好处:
定时更新全量自动化测试代码,确保每次构建都是最新版本。
干系人可以实时看到当前的自动化进展情况。
不占用个人PC的资源。
二、如何快速加入DevOps流水线
2.1 在Jenkins上安装RF的插件?
2.2 配置管理节点(新建-启动)
进入节点管理
新建节点
节点配置
节点启动
2.3 新建&配置JOB
新建任务,选择构建只有风格的软件项目
新建任务的时候要选择第一步建的那个节点
构建和报告配置
邮件推送配置
2.4 启动构建
点击立即构建,通过控制台就可以看到自动化执行情况
2.5 测试报告
结果报告总体信息
具体自动化用例的错误准确定位,第一个红色框是预设的检查点,第二个红框是报文的返回值,两个值比对不一致所以报错,日志清晰明了。
接下来就在MultiJob中加入自动化测试Job就可以做到整个管道的贯通。
至此自动化测试在Jenkins中的配置任务就全部完成了。
结语
RobotFramework作为开源、轻量级、极强扩展性的自动化测试工具的代表,已经被越来越多的企业所应用。相对于开发一个个性化的自动化测试工具,RF具有相对低门槛、更短的开发周期、更低投入的优势。当然也存在着一些劣势比如:单机版、无数据库、执行效率、本机性能要求较高等问题。这些问题需要在规划之初加以考虑降低其负面影响。最后希望本文能激发一些同学学习RF的欲望一起加入我们部门的自动化建设中,扩大我们的自动化范围,为我们的系统稳定护航。
- THE END -
领取专属 10元无门槛券
私享最新 技术干货