• 自动化思维


    • 自动化策略思路:

    • 目分析(因为:梳理清楚项目的现状情况,自动化策略要结合项目现状来开展)
    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. 通用代码库的目的:提高代码复用率,减少重复开发,提高效率。
  • 相关阅读:
    sqlserver 测试sql语句执行时间
    最大子数组问题(求连续子数组的最大和)
    字符、字节和编码
    Android 的数据存储——SharePreferences
    TCP、UDP原理及比较
    计算机常识——软件系统体系结构
    三个线程循环打印ABC10次的几种解决方法
    Analysis of Algorithms--preface
    Java native方法、JNI实例及常见错误分析
    随笔-2014-9-30
  • 原文地址:https://www.cnblogs.com/sunshine-blog/p/9513453.html
Copyright © 2020-2023  润新知