如何设计出优秀的Robot Framework自动化测试平台框架?
摘要:自动化测试如果需要能高效快速的支撑软件项目的测试,项目的快速迭代以及上线,除了以上我们介绍的需要许多的Lib来支持以及需要高效的去编写自动化测试案例外,还需要一个好的自动化测试框架平台来支撑我们的自动化测试案例的执行以及分析,自动化测试平台
自动化测试如果需要能高效快速的支撑软件项目的测试,项目的快速迭代以及上线,除了以上我们介绍的需要许多的Lib来支持以及需要高效的去编写自动化测试案例外,还需要一个好的自动化测试框架平台来支撑我们的自动化测试案例的执行以及分析,自动化测试平台一般需要解决测试案例执行任务的创建,任务的管理,任务的调度,测试案例的解析,测试案例分别根据不同的测试类型分发给不同的测试工具或者测试Lib库进行执行,并且需要对执行的数据进行分析,得出质量数据,然后才好给出对应的测试报告分析数据给测试经理,项目经理来辅助持续的改善项目版本的质量,下图是一个自动化测试平台框架的架构设计图。->关注清哥聊技术公众号,了解更多技术文章
本文作者:张永清,转载请注明出处:https://www.cnblogs.com/laoqing/p/13622088.html节选自《Robot Framework 自动化测试框架核心指南》
框架图中的自动化测试平台框架主要包含了4个部分,自动化测试案例编写的IDE工具,自动化测试案例的执行,测试任务的管理和监控,测试案例执行后的数据分析。
一个通用的自动化测试案例编写的IDE工具一般需要包含的功能如下图所示。
本文作者:张永清,转载请注明出处:https://www.cnblogs.com/laoqing/p/13622088.html节选自《Robot Framework 自动化测试框架核心指南》
友好的用户案例编写界面,通常一般可以表格或者表单的形式,比如RobotFramework,就是典型的表格界面,也可以用Eclipse的插件式开发实现这一需求。
在平台中,一个自动化测试案例的执行一般包括如下图中的基本步骤,最核心的就是将解析的案例数据分发出去给不同的Lib库去执行。
本文作者:张永清,转载请注明出处:https://www.cnblogs.com/laoqing/p/13622088.html节选自《Robot Framework 自动化测试框架核心指南》
在做数据分析时,可以借用很多现在主流的大数据组件,如下图所示,数据分析通常包括实时数据分析和离线数据分析,分析中我们还会用到很多消息队列中间件,比如kafka,数据明细可以采用elasticsearch来进行存储,这和elasticsearch本身的特点有关系,可以支持大数据的存储以及方便以后我们来做全文检索。
平台框架图中包含的组件如下表所示。
IDE
RIDE,eclipse插件,idea插件
测试案例版本服务器
svn,git等版本控制服务器
自动化测试案例数据
自动测试案例文件
案例解析器
负责自动化测试案例文件数据的读取和解析,翻译成自动化测试工具或者自动化测试Lib库可以执行的命令
资源监控和
资源管理
负责各个执行器,案例解析器以及自动化工具服务器的资源监控和资源管理
任务调度器
调度自动化测试执行任务在多个节点上的执行
自动化任务管理器
接受自动化任务的提交,自动化任务的管理(任务启用,任务停用,任务新增,修改,删除等)
告警
任务执行异常,超时等,自动产生告警
短信平台
告警短信发送,短信接收
邮件服务器
接收生成的测试报告或者告警短信,然后邮件发送给对应的相关人员
Kafka
执行日志数据的缓存存储
Elasticsearch
测试案例执行的日志明细数据存储
Kibana
是一个开源的分析和可视化平台,旨在与 Elasticsearch 进行结合。Kibana 提供了搜索、查看和与存储在 Elasticsearch 索引中的数据进行交互的功能。开发者或运维人员可以轻松地执行高级数据分析,并在各种图表、表格和地图中可视化数据。
