目录
近些年自动化测试发展迅猛,几乎每个行业,GUI,APP,云等都开发出自己的自动化开源框架来满足本行业自动化测试的需求,但这些自动化开源架构大多是偏向自动化实现技术的。
从自动化工程的角度来说,自动化测试框架主要分为四层:
第一层被测系统/测试环境层:
自动化测试架构的底层是被测系统/测试环境层,这一层主要包括自动化测试对象的实际物理设备和虚拟化环境。我们的自动化脚本实际就运行在这一层。
第二层是“自动化测试架构层”
这是自动化测试架构的核心层,在这一层中主要包含几个子系统。
第三层是自动化脚本和套件层。
我们建议从特性--测试类型这样的角度来组织自动化脚本。
第四层用户层
包含多个子系统脚本调度运行系统,自动化测试报告,仪表盘,用户管理系统。
DevOps自动化效能平台需要包含以下分层:
1)资源层:
包括开发环境资源、测试环境资源和被测对象资源,一般来说资源层需要提供资源调度和编排的能力。
2)数据层:
包含整个DevOps系统中的所有数据,如需求库、代码库、制品库、测试用例/脚本库、缺陷库和发布库。数据层包含了企业产研的所有核心资产,需要提供存储备份、恢复、扩容、权限和访问控制、审计等基本能力。
3)能力评估层:
从组织能力角度,对产研运全流程中收集的度量元数据进行分析,建立组织能力极限库,确定团队的度量数据、效率目标,从而推动整个组织团队持续改进。
4)DevOps自动化流水线:
这也是自动化效能平台的核心,又包括持续开发/集成持续测试、持续发布和持续运维几个子系统。
持续开发/集成子系统:提供需求和代码关联、代码静态扫描、构建/打包、单元测试的能力。
持续测试子系统:提供需求和测试用例(含脚本)关联、接口测试、功能性测试和非功能专项测试的能力。
持续发布子系统:提供虚拟机/容器发布的能力。
持续运维子系统:提供弹性、监控、日志/告警、升降级等能力
5)用户层:
提供需求管理,项目管理,研发过程管理,缺陷管理,发布管理和资源管理等全流程管理能力。