文章目录

  • 前言
  • 项目整个阶段
  • 一些规范说明

前言

当前 IT 公司一般拥有四大角色

  • 产品(业务)
  • 开发(Web,App)
  • 测试(测开,自动化,手工)
  • 运维

大型的 IT 企业拥有着强大 QA 团队和运维团队,小型的 IT 企业生存艰难,就简化了产品,并且舍去了测试和运维,测试和运维全部压在开发身上

随着 DevOps 持续集成持续交付的兴起,和敏捷开发方法论的流行,软件产品的快速迭代,国内测试团队越来越正规化,测试团队的在其中的作用又有了新的扩展,已经不再仅仅是满足简单的手工功能测试

那么测试团队在整个敏捷开发中的工作内容是什么呢?下面我将结合我自己的工作经验来细细说明

项目整个阶段

整个项目采用敏捷开发的模式,两周一个迭代来进行开发,其中包含项目经理(PM),产品,开发,测试,运维

  • 承接项目阶段(对于公司自研产品请忽略)

    • 对于私企来说就是通过产品的售前人员得公司产品和技术的销售)去推广自己公司的解决方案,然后项目- 需求讨论阶段
    • 需要人员和测试人员,产品是主导,测试提出自己的改进意见,TDD 风格有助于开发出更加安全可靠的产品
  • 需求宣讲阶段
    • 需要和测试和开发,产品做主导,宣讲的时候测试听取最终版本的需求说明,可以再次提出自己的疑问,开发也对需求的开发思考做出说明。不得不提的是测试人员需要对需求文档进行预习,否则容易造成需求文档不能一时理解的问题!
    • 需求宣讲完,测试人员就可以开始准备测试用例,可以在测试用例之前画个 xmind 思维导图方便理解被测点,当然如果时间够用的话
  • 设计讨论阶段
    • 需要和测试测试提出自己的疑问和建议
  • 设计评审阶段
    • 需要测试,产品可以参与,看产品的时间,一般情况下,产品不用参与,测试可以再次提出疑问和思考
    • 宣讲完,测试可以开始维护修改测试用例,同时需要标出冒烟级别的测试用例
  • 用例评审阶段
    • 测试人员将写好的测试用例和思维导图进行评审,需要参与,产品和开发提出疑问,然后测试人员可能需要稍微调整测试用例
  • 开发阶段
    • 开发人员进行开发
    • 开发人员进行单元测试,编写提测文档
    • 环境协调自动部署,开发和运维介入
    • 测试人员开始测试执行
      • sit 系统集成测试环境下,手工测试人员,手工执行测试用例
      • sit 系统集成测试环境下,接口自动化测试人员,太前期的时候不必做所有接口的测试,由于系统还未稳定,可以做主要冒烟级别接口的测试工作,然后可以补上其他接口的测试
      • sit 系统集成测试环境下,UI 自动化测试人员,前期时候不用做 UI 测试,相较于接口,UI 变动性更大,所以 UI 自动化必须要在系统足够稳定,页面不会有太多的变动时候去做,并且只去做主要流程的 UI 自动化
      • 性能测试人员,压力测试需要在接口稳定之后去做,压力测试原则上是越早做越好,尽可能早的在项目初期发现性能上的问题,越早解决越好
      • uat 验收测试环境下,进行兼容性的测试
  • 上线阶段
    • 两周一个迭代,上线阶段一般在半夜,需要提前先由产品和开发商量好,编写好上线清单
    • 开发和测试合作,检查环境,日志,计划等等内容
    • 开发按照清单进行上线
    • 上线后由测试进行测试执行,有问题需要及时反馈给开发和运维

一些规范说明

  1. 不论是讨论阶段,还是宣讲阶段,建议采用半天时间,因为实际过程中开会时间很容易超时,导致项目进展缓慢,所以建议给项目设置一个要求尽量强制团队开会时间不能超过半天
  2. 测试人员需要贯穿整个项目流程,不管是需求还是设计都需要测试人员参与,测试人员不仅要懂需求,还要懂技术,同时对于线上的测试,以及辅助开发和运维进行部署也是有意义的,测试人员基本可以说是一个全能的角色了
  3. 实际过程中有一个问题就是需求和设计宣讲的太快,不容易听明白,特别是需求评审的时候,这时我们的解决办法,一个是在需求讨论时候多花点功夫,另一个就是可以在需求评审之前让测试团队先找产品拿到粗略的需求文档进行预习。之后在需求评审中需要各方大胆的提出自己的问题,不管这个问题是不是简单或者困难都是值得提出的
  4. 现实中还有一个问题就是测试用例编写的细致程度,有时候一个需求写成用例,细致的写可以写上百条,也可以写成几十条,这需要按照整体项目的进度以及迭代周期和功能的重要程度和测试方法等诸多因素来考虑,一般采用等价类和边界值,这个等价类和边界值要细分到什么程度呢?这是一个比较灵活的点,需要总和考虑。当然对于测试而言越细越好
  5. 开发进度缓慢,测试始终不能测试执行怎么办,测试团队可以每天进行任务汇报,按照一定的文本格式将每天的工作任务,测试被阻塞情况,测试 bug 情况等内容及时在下班前反馈给 PM,形成一个固定的模式,当然除了测试团队外,其他团队也需要这样做,形成一个相互监督的体系
  6. 开发进度缓慢容易导致的一个问题就是一个迭代周期快要结束了,可是测试用例还没有被执行完,全部都积压在了最后几天,这该怎么办?首先要明确不能因为要做完一件事而压缩质量,所以需要即使向 PM 反应完成多少测试用例的的工时是多少,这样 PM 会自动将超出工时的测试用例移至下周
  7. 测试发现 bug 时候需要即使向类似 jira 这样的平台提出 bug 单,同时向开发及时反馈,并协助开发解决
  8. 敏捷开发的过程中,每天会有早会,要说明一下昨天今天和以后要做的事情,然后注意更新任务,这些是在 scrum 看板站会进行的
  9. 建议每个迭代之后,开一个迭代会说明迭代的不足等其他事情
  10. 开发人员提测之后需要更新一个提测表格,能够让测试及时看到,同时也需要提醒测试人员

整个项目流程中测试团队究竟该做哪些事情和承担了一个怎样的角色?相关推荐

  1. 项目实施中的团队协作--关于发现问题、解决问题有效模式的探讨

    本文面向分布式环境下企业级应用的实施过程中,Onsite实施团队和Offshore研发团队之间的有效协作.大家可以想象这样的场景:实施人员部署研发团队提供的服务到客户现场,在部署和试运行过程中难免会出 ...

  2. git在项目中常用命令和项目流程中涉及到步骤分析

    GIT git的组成:分布式,版本控制,软件 svn是集中式版本控制,而git是分布式版本控制 问价拷贝 本地版本控制 集中式版本控制 分布式版本控制 第一阶段:生成版本,扩展功能,版本回滚 命令: ...

  3. vue项目工程中npm run dev 到底做了什么

    npm install 安装了webpack框架中package.json中所需要的依赖 2.安装完成之后,需要启动整个项目运行,npm run 其实执行了package.json中的script脚本 ...

  4. 参考了下中国信息通信研究院发布(已在中国通信标准化协会立项)的行标“研发运营一体化(DevOps)能力成熟度模型”中对于“持续交付”核心流程中的三级指标,做了下对比,欢迎拍砖

  5. 如果你去小公司带技术团队,可能需要做的事情

    前几年和同事聊天,说哪天不在大厂了,去了小厂带技术团队应该做哪些技术层面的基建呢? 于是就基于当时自己的理解梳理了很多技术中间件.基础设施层面需要建设的东西,但好多年过去了还是在大厂,暂时也用不上了, ...

  6. 程序化那么神秘,究竟在做什么事情

    比如计算好某个品种的价差,符合无风险套利,然后进行编程.当市场波动有先有后的时候,出现这种交易机会,马上成交.其实这是在做价差或者某个比价的极值.目前这种交易方式在国内也有非常多.比如股指期货的期现套 ...

  7. 计算机程序设计是干嘛的,程序设计究竟是做什么事情的

    >只有站在应用第一线,才能颠覆别人的成就,这比你成天跟在别人屁股后研究人家手里设计原理要更强,是一种更巧的方法论.就 >象老外站在应用第一线,将火药用处颠覆,创造新的更大用处,如果请外星人 ...

  8. 一款新游戏上线流程中,运维需要注意的事项

    一款新游戏上线流程中,运维需要做的事情往大了讲,其实没有多少,无非就是前期和开发讨论合适的架构,准备测试环境和正式环境各种资源等,后期为游戏的稳定运行保驾护航.但是往小了看,事情其实复杂繁多,这里做一 ...

  9. 测试分类 --- 根据项目流程阶段和代码可见度划分

    一.根据项目流程阶段划分: 单元测试.集成测试.系统测试.验收测试 单元测试:单元测试是对软件中的基本组成单位进行的测试.目的是检验软件基本组成单位的正确性. 集成测试:集成测试是在软件系统集成过程中 ...

最新文章

  1. 新书上市 | 为什么你的英语总是学不好?
  2. 【FPGA】SRIO IP核系统总览以及端口介绍(二)(I/O Port 含义介绍)
  3. 【操作系统】考研の处理机调度算法(看不懂你来打我~!)
  4. 【spring】通过GZIP压缩提高网络传输效率(可以实现任何资源的gzip压缩、包括AJAX)
  5. datagrip jdbc驱动_datagrip离线安装驱动jar
  6. 文件设置索引_Linux文件系统是怎么工作的?
  7. php 面向对象问题,PHP 面向对象开发的一些问题
  8. VS2010 小技巧
  9. stm32固件库手册使用方法
  10. 基于JavaScript+css的购物网站项目
  11. 最近流行的PlanB,全民副业的时代开启了?
  12. android电视安装app
  13. Python 中的json模块dumps参数详解
  14. 中学教师资格证常考的73道简答题
  15. 太准了这十个心理暗示
  16. 云计算产品学习(1)
  17. android刷机恢复出厂设置吗,安卓手机恢复出厂设置和双清有什么区别?
  18. 安卓手机如何永久关闭快应用?
  19. 台北淡水 渔人码头之行
  20. 基于MPC算法控制车辆的运动轨迹

热门文章

  1. 曾国藩《挺经》卷十六荷道
  2. 惠普 触摸板驱动_如何在HP触摸板上安装Android
  3. 哈夫曼解压缩解压缩学习
  4. 苹果自带相册打马赛克_用苹果手机拍照,这几个设置一定要打开!还没开就太可惜了...
  5. java计算机毕业设计贺卡商城设计与实现MyBatis+系统+LW文档+源码+调试部署
  6. 谷歌地图如何制定火车路线_如何制定完美的路线图?
  7. 【无人驾驶一】【第一本无人驾驶技术书】最全的12篇无人驾驶技术系列文章
  8. matlab绘制环形彩色圆盘
  9. dolphinscheduler-数据质量-源码分析
  10. UML 活动图 ---- 建模业务过程