更多课程 选择中心

软件测试培训
达内IT学院

400-111-8989

面向业务的软件自动化测试框架


针对传统自动化测试维护成本大、复用性差、技术要求高等问题,提出一种面向业务的软件自动化测试框架。按照业务逻辑和测试脚本分离、测试脚本和测试数据分离、功能模块高内聚低耦合的设计原则,进行分层架构设计,在此基础上开发一系列实用易用的功能模块。实践证明,该自动化测试框架功能丰富、扩展便捷,有效降低自动化测试难度,提高测试工作效率。

1、引言

传统自动化测试,通常针对被测系统特点专项开发自动化测试脚本,当系统功能变更频繁时,自动化测试维护成本很大;测试资产不便于统一的管理,重要测试资产不便于积累和复用;另外,自动化测试对测试人员的开发技术要求,限制了自动化测试的大规模普及和推广。为此,本文给出了一种业务与技术分析、脚本与数据分离的面向业务的测试框架BOSATF(Business Oriented Software Automated Testing Framework)。

2、BOSATF架构设计

2.1 架构设计原则

业务逻辑和测试脚本分离:框架提供协同工作平台,业务人员设计业务组件和业务流,自动化测试技术人员关注具体自动化脚本的开发,两个角色分工明确、高效配合。

测试脚本和测试数据分离:脚本和数据分别独立构建,同一测试脚本适用不同的测试数据,并使得脚本和数据的变更对整个测试工程的维护量降到最低。

框架功能模块高内聚低耦合:分层架构设计,模块内功能专一,模块间功能独立,在满足自动化测试框架基本功能需求的基础上,减少框架维护工作量。

2.2 分层架构设计

BOSATF由资源层、构建层、控制层、服务层和基础函数层等五大组件构成。

资源层提供框架运行过程中所需要自动化测试脚本、测试用例、测试数据和业务流程。各类资源逻辑上互相独立。

构建层负责资源层调度和管理,实现脚本、数据、用例、业务流程的统一管理,为构建层提供一致性服务。

控制层协调构建层基础服务,遵循测试执行计划和测试机群管理规则,按照计划分配测试资源,保证测试执行有序进行。

服务层主要功能有日志信息的收集、缺陷的管理、测试过程中错误场景的恢复以及测试报告的生成。

基础函数层主要提供框架运行过程所需要的通用功能,包括日志管理、字符串格式转换、身份证号生成、保费校验和移动设备控件识别等功能。

3、BOSATF功能模块

3.1 测试用例管理

采用“业务流程分析法”,遵循“合并”和“拆分”原则,把手工测试案例转化成自动化测试案例,并建立映射关系,明确手工测试和自动化测试的对应关系,让测试人员实时掌握自动化测试进度,以便及时制定和调整测试执行方案。

实现自动化测试用例和成熟测试管理工具的互联互通,实现测试用例的导入、导出和多模式测试用例管理功能。

3.2 测试数据的管理

部分中间业务流程测试数据的准备时间占总测试周期的30%。针对这个问题,框架支持测试数据自动生成功能。根据被测功能特点,定制测试数据生成策略,批量自动生成测试数据。

框架同时提供“一次性数据”解决方案。针对部分业务模块测试数据无法恢复的情况,框架记录测试历史数据,避免数据的重复使用。

3.3 业务流程定义模块

该模块提供了可视化业务流程定义功能,降低了框架使用的技术难度。通过该模块,测试人员无需关注技术细节,只需要从业务人员视角定义业务操作流程,实现自动化测试脚本的自动组装。

3.4 测试执行管理

测试执行管理模块调用测试脚本、测试用例、测试数据、业务流程定义等相关服务,分配硬件执行机器资源,执行测试计划。同时,收集测试执行过程信息,为服务层的缺陷管理、测试报告管理提供基础数据依据。

3.5 场景恢复模块

目的是在出现故障的情况下能尽快的恢复系统,保证能快速、准确地正常恢复测试场景。根据故障的不同,明确地定义恢复的策略,制定不同的恢复机制,确保自动化测试在可预知风险前提下,快速恢复测试场景,按计划执行测试案例,保证测试进度。

3.6 缺陷管理模块

该模块采用与常用缺陷管理工具(QC、BugFree、JIRA)集成的办法,提供对发现缺陷的管理功能。支持缺陷状态的自定义,实现缺陷的自动提交,测试处理进度的自动追踪。

3.7 测试报告模块

以测试执行过程日志记录为基础,结合测试计划、测试执行管理等基础信息,提供多模式(TXT,Excel,Word,PDF)测试报告生成功能。

3.8 测试机群管理模块

该模块在实现自动化测试框架基本功能基础上,结合虚拟化IT运维趋势,开发了基于虚拟机技术的机群管理模块。

测试机群从职责上划分为五类:自动化控制调度服务器、资产管理服务器、资产备份服务器、测试执行机群及公共函数服务器。

4、结论

针对传统自动化测试框架不足之处,结合实际工作需求,提出了一种面向业务的软件自动化测试框架-BOSATF。它独立于自动化测试实施过程,作为专题项目开展工作,实现了业务流程管理和技术实现的分离,降低了自动化测试成本,提高了自动化测试大规模推广的技术可行性。

该框架在实现自动化测试框架基本功能基础上,结合虚拟化IT运维趋势,开发了基于虚拟机的机群管理模块。同时,框架提供了开放式集成接口,为与成熟的软件测试管理工具互通集成提供了途径。

实践证明,该自动化测试框架功能丰富、扩展便捷,有效降低了自动化测试难度,提高了测试工作效率。

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:没有上一篇了
下一篇:有效发现UI用户界面层的缺陷

划分动态测试和静态测试的依据是什么?

最常用的软件测试工具?

测试工程师要学什么?

如何在验收测试中运用白盒测试?

  • 扫码领取资料

    回复关键字:视频资料

    免费领取 达内课程视频学习资料

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

陕西省

湖南省

贵州省

云南省

广西省

海南省