自动化思维

  • 自动化策略思路:

  • 目分析(因为:梳理清楚项目的现状情况,自动化策略要结合项目现状来开展)
  1. 项目类型-是快速发布还是精品化项目特征-是新功能还是老功能影响还是改动
  2. 项目重点-重点和难点体现在什么地方
  3. 项目人员-人员技能、人员比例等等
  4. 公司要求-流程要求、高压线、规范等等
  • 确定目标(设置预期目标效果)
  1. BVT覆盖率:80%
  2. xx模块:功能覆盖率xxx%
  3. 覆盖项目基本用户场景
  4. 开发单测覆盖xx模块算法,确保算法逻辑功能
  5. 代码覆盖率达到xxxxx%
  6. 代码review、扫描要求
  7. ……
  • 风险分析(包括:风险识别+风险评估+风险应付)
  1. 风险识别:时间维度、人员技能、人力安排、产品特性难度、新技术、非成熟方案
  2. 风险评估:分为-高中低,基于风险测试(RBT)- 风险值=风险概率*风险影响
  3. 风险应对:针对风险,应对措施、办法
  • 分层测试(从整体或模块进行分层分析,给出每个层面的测试策略,分解测试)
  1. 单元测试:函数级测试,验证代码正确性
  2. 接口测试:模块级测试,单个模块、模块与模块之间交互接口功能
  3. 功能测试:业务级系统级的测试,端到端的测试
  4. 专项测试:稳定性、可靠性、性能、兼容性、用户场景等等。
  • 测试内容、策略
  1. 风险分析后,得出应对措施的测试内容
  2. 分层分析后,每层的测试内容
  3. 完成版本目标,所需要测试的内容
  4. 其他纬度:老功能自动化维护等等
  • 自动化策略:重点是什么、什么方法、覆盖广度和深度、在什么阶段完成。
  • 自动化设计原则:

  • 1比1原则(维护性)
  1. 用例编写:变量的抽取
  2. 环境适配:改变环境后,什么东西需要修改
  3. 代码设计:需求变化后,什么东西需要改变
  • 最少依赖原则(环境适应性+复用性)
  1. 所有的topo物理环境最少
  2. 所需要的额外搭建的服务最少
  3. 依赖人工准备最少
  • 分层测试原则(精准测试+提前测试)
  1. 版本级的分层总体思路
  2. 模块或专项级的详细思路
  • 简单方法原则(可测试性+现成成熟方案)
  1. 尽量使用简单的方法
  2. 无法找到满意简单方法,可以进行可测试性测试
  • 覆盖面广原则(价值性+有效性)
  • 自动化设计思路:

  • 需求目标
  1. 理清项目需求
  2. 确定目标
  3. 找出价值点
  • 策略制定
  1. 参考“自动化策略思路”
  • 技术预言、学习准备
  1. 对于一些全新技术方法,提前预研
  2. 对于需要人员学习的技能,提前准备
  • 整体设计
  1. 整体框架
  2. 环境topo图
  3. 整体分析思路
  4. 自动化关键字
  5. 整体可测试设计
  6. 复用自动化分析
  7. 等等其他总体方面考虑
  • 详细设计(模块、专项)
  1. 模块开发设计深入理解
  2. 模块整体分层思路
  3. 模块的可测试性需求
  4. 模块的详细测试方法
  • 备注:

  1. 平台框架的目的:管理代码和用例,提高复用率和效率。
  2. 通用代码库的目的:提高代码复用率,减少重复开发,提高效率。
原文地址:https://www.cnblogs.com/sunshine-blog/p/9513453.html