自动化测试管理规范
版次:2022年1月5日 第1版
类型:技术文件
部门:软件部
上层文件:软件测试用例设计规范
上海维宏电子科技股份有限公司 版权所有
| 文件版本 | 修改前文件版本 | 主要修订内容和原因 | 修订人 | 修订日期 |
|---|---|---|---|---|
| R1 | 余晓霞 | 2022/1/5 |
1 目的
在团队协同工作环境下,让自动化测试可以更好的并行开发和实施。通过脚本的编码规范,达到增强脚本可读性、健壮性和可维护性的目的,并减少项目组中人为造成的损失。通过脚本质量规范,提高自动化测试执行的准确率,减少人工干预成本。
2 适用范围
软件平台及各产品线团队。
3 术语和定义
下列术语和定义适用于本规范。
- 规则: 必须遵守的约定。
- 原则: 指导性的约定。
- 说明: 对此规则或原则的必要解释。
- 正例: 对此规则或原则给出的正确例子。
- 反例: 对此规则或原则给出的反面例子。
- 例外: 对此规则或原则给出例外的说明。
- 代码片段: 在代码区域出现中括号中带中文字的及符号…,如:[代码片段]或…,则一般表示代码片段。
4 编程规范
编程规范遵循软件部的软件编程规范(内网)
5 用例组织
【规则 1-1】用例的标题描述、标签和优先级可参考《软件测试用例设计规范》。
【规则 1-2】测试用例必须有断言(即预期结果),没有断言的用例,不属于完整的用例。
例外:性能测试用例和稳定性测试用例可以不遵循此规则
【原则 1-3】UI 自动化必须使用分层的思想,即把 UI 界面的对象属性和对象操作抽取到脚本的上层;禁止在测试用例里直接使用元素定位和操作元素。以下正反例是基于 RobotFramework 框架的代码片段。
反例:
*** Test Cases ***
TC001_验证按钮可用
click //Button[@AutomationId='1']
[代码片段]
正例:
*** Variables ***
//UI对象库
button1_xpath="//Button[@AutomationId='1']";
*** Keywords ***
//元素所在页面的文件(或类文件)内容
ClickButton
click button1_xpath
*** Test Cases ***
TC001_验证按钮可用
ClickButton
[代码片段]
【原则 1-4】遵循业务场景与应用操作分离的原则,即测试场景是由上层的应用操作组合而成。如下范例所示,范例是基于 RobotFramework 框架的代码片段。
*** Keywords ***
所有轴机械回零
[代码片段]
自动模式启动加工
[代码片段]
获取绿灯状态
[代码片段]
return green_status
*** Test Cases ***
TC001_验证自动模式启动加工
所有轴机械回零
自动模式启动加工
Should Be True 获取绿灯状态
[代码片段]
【原则1-5】UI 自动化测试,当有对话框或页面非系统首页时,必须有后置处理模块把对话框关闭或返回系统首页。以下正反例是基于 RobotFramework 框架的代码片段。
例外: 在各种异常或执行失败发生时,能把对话框关闭,避免未关闭的对话框,影响后面的用例执行。
正例:
*** Settings ***
Suite Teardown 退出日志列表页
*** Keywords ***
退出日志列表页
${is_LS6000} is 6000 UI
run keyword if ${is_LS6000} 进入绘图页
run keyword if ${is_LS6000} == ${False} LS3000关闭日志列表对话框
6 运行
【规则 2-1】冒烟测试和回归测试(通用必测项回归测试)必须执行自动化测试。
例外: 自动化测试覆盖率不高,或自动化执行体系不健全,可不遵守此规则。
【规则 2-2】 保证提交服务器的代码无语法错误。
【原则 2-3】脚本上传服务器之后,必须在持续集成上手动构建,并关注构建的结果,只有构建成功并且执行测试通过才可用于测试。
【原则 2-4】搭建持续集成环境来执行自动化测试。自动化测试负责人负责持续执行环境的搭建和维护。
【原则 2-5】当持续集成执行的自动化测试,执行失败时,应 24 小时内定位问题,如果是脚本问题,则应在 24 小时内修复。
【原则 2-6】当测试用例超过 500 个,或修改影响的范围较广时,不可在用于真实测试的代码分支上进行修改,必须在开发分支上进行修改。
例外:紧急问题修复可不遵守此原则。
【原则 2-7】已实现自动化测试的功能,当其功能规格发生变更时,功能测试负责人须告知相关的自动化测试人员。
【原则 2-8】功能测试人员必须关注自动化测试执行结果。执行失败时或自动化测试执行结果与手工测试执行结果不一致时,必须告知自动化测试人员。
编制:余晓霞 审核: 批准:
审批链接: