随笔 - 47  文章 - 0 评论 - 101 阅读 - 25万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

产品稳定期自动化测试方案

 

一、概述

移动App产品更新速度太快,尤其是产品前期阶段,UI及逻辑功能调整频繁,自动化测试很难跟上测试要求,将大量精力用于手动用例自动化并不太现实,于是自动化测试本身定位于少量用例自动化满足主要功能覆盖,性能测试,压力测试,稳定性测试等;但随着产品进入稳定期,产品功能趋于完善,UI及逻辑功能调整幅度变小,可以适时调整思路着眼于将手动用例自动化,以降低手动测试成本,加快测试速度。

整个思路如下:整理现有手动用例库,筛选可被自动化用例组建自动化用例库,编码完成这些用例,以降低每次测试迭代中手动用例数量。就目前我们组流程而言,每次发版都在下班时间点,晚上这段时间可以批量运行自动化用例,如果单个用例成功率超过80%,则可视为该用例成功,否则判定失败,第二天上班后自动化人员查看失败用例,对失败用例进行手动验证,并根据失败情况修复完善测试代码,以此为一个自动化迭代周期。假设一共有1000条用例,400条可用于自动化,即使自动化用例成功率在80%,也可以为每轮测试减少320条的量,每次测试迭代中减少了32%的量,这是非常可观的。

 
   

 

 

 

      就一个版本内测试周期准备期而言,一旦产品文档定版,就开始进入用例设计,筛选修改老测试用例,组建新版本测试用例计划,与此同时自动化可以针对产品文档着手准备控件定义层(POM层)伪实现,调整公用方法逻辑层(LFM层)和用例层代码,并对新版本测试用例计划进行筛选,着手新一轮自动化测试用例代码编写和维护工作,一旦新版开发完毕,可以迅速实现POM层,调试测试代码逻辑,完成上述自动化测试迭代。

 

二、项目要求

实施上述流程对项目管理,用例管理,自动化测试人员和框架工具提出了更高的要求:

  • 项目管理,整个流程对时间要求和团队沟通配合要求十分严格,尤其是准备期阶段,这就要求测试管理人员针对流程各个阶段在项目管理更加精细,把控能力更强;
  • 用例管理是整个流程实施的基础,我们有两个用例库需要维护,总的测试计划库和自动化测试计划库(子库),不仅要求库里每个用例步骤和验证点写得更加详尽,还要求每次制定测试计划时针对版本修正即使对库里用例进行维护,这对用例管理也提出了更高的要求;
  • 另外我们还要保证自动化用例执行的成功率以及验证点的正确性,要满足代码持续集成迭代的要求,这对自动化人员编码能力提出了更高的要求,有条件的话必须引入code review;
  • 整个流程中要用到测试用例管理,自动化代码持续集成,自动化框架和自动化执行框架等各种辅助工具,市面上的一些工具并不能完全满足需求,要自主研发和进行二次开发。

三、风险及限制

  • 这一切流程都基于每个版本迭代尽可能小,尤其是UI及页面跳转逻辑,至少得保证每次小幅改动页面(逻辑基本不变,UI变动少于3处)不超过5个,大幅改动页面不能超过2个,新增页面虽然对原有测试代码影响较小,但最好不能超过4个。
  • 自动化最难的点仍然在于结果验证,其不可能做到人眼验证那么准确,这对自动化覆盖率有直接的影响,也要求用例描述更加详尽。
  • 要统计详尽的自动化通过率,需要批量多次执行用例,这就对设备个数提出了要求

 

 

 

posted on   salomon  阅读(1433)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示