轻量级的内部测试过程r \\ u0026研发团队
对于一个r \\ u0026研发团队的目的,标准化的工作流程资产不可或缺的一部分,特别是对于初创的r \\ u0026研发团队方面。很多r \\ u0026研发管理是不够完整。如何理解的研发团队中的各种角色,充分利用现有资源团队,为了确保最终用户的需求和产品管理是开发管理者需要考虑的问题。
測试流程就是须要标准化的协作流程中的一种,是一套用于规范需求、开发和測试人员进行服务公布质量控制的流程性指南和说明,确保整个团队对产品质量保证有一个统一认识。促进过程的可记录性和可跟踪性,提高团队协作的信息透明和工作效率。本文面向的是10人下面规模的小型研发团队,流程尽量清晰和简洁。是一种轻量级过程控制的体现。
一.流程说明
内部測试流程通常须要基于持续公布思想,整合版本号控制、配置管理、持续集成、过程自己主动化和部署流水线等多个project实践,实施过程中须要对以上各点有所了解。同一时候对开发/測试环境独立性等外部环境因素进行把控。
本文中提到的内部測试流程使用上须要基于一个带有Ticket系统的管理平台,如Redmine、Jira等等,假设使用多个平台可能会导致流程闭环的中断或运行效率的减少;同一时候。本流程仅仅适用生命周期较长(一个月左右或以上)的产品开发,一两周之内的项目不建议使用,由于流程和管理本身也须要成本;在分布式开发模式下,信息传递和有效沟通是团队协作的一个瓶颈,能够通过使用该流程确保协作的有效性。
内部測试流程中涉及的主要角色及其职责例如以下:
- PO:产品经理。负责产品规划、方案设计和功能分解
- DEV:研发人员。负责功能实现、进度控制
- QA:測试人员,负责产品质量控制、服务公布
内部測试流程中主要使用例如以下工具确保流程的运转和信息的传递:
- 邮件:过程数据记录、流程阶段性成果和终于闭环达成的消息传递机制。
- Ticket系统:问题跟踪、范围/时间控制和团队协作统一平台
- Jenkins:系统构建、版本号控制和服务公布统一平台
二.流程展开
Ticket系统上的问题我们统称为一个Issue。一个Issue具有5大状态。包括各个状态转变过程和责任人的Issue完整生命周期例如以下:
结合Ticket系统上Issue的生命周期。内部測试流程整体流程图例如以下,当中背景为红色的流程须要通过邮件进行信息传递和同步:
2.1 新增Issue到Ticket 系统(PO+QA)
Ticket系统上与測试相关的Issue来源有两大块,新增Issue的状态为“New”:
- Feature:即功能点,来自于每次需求会议。由PO负责进行录入
- Bug:即缺陷,能够包含重大缺陷(Bug)和小问题(Defect)。前者直接影响服务的公布。后者可视情况排除在公布范围之内。由QA负责进行录入
2.2 Issue开发 (DEV)
DEV依据Ticket系统上指派给自己的Issue进行开发。开发过程中Issue状态为“InProgress”。
2.3 更新Issue完毕状态(DEV)
DEV开发完对应的Issue之后设置其状态为“Resolved”。
2.4 通过Jenkins平台构建服务(DEV)
DEV通过Jenkins持续集成平台进行server端、表现端服务自己主动化构建,构建结果会产生对应的部署和安装包。
2.5 发送提交測试邮件到QA(DEV)
DEV整理本次測试须要提交给QA的測试范围、各种部署资源以及部署步骤和注意点,并发送正式的提交測试邮件到QA相关负责人以告知本次測试需求的正式提交。邮件的标题注明測试的系统名称、測试日期和该日期下的提交測试序号,如:XXX update(X)@2014-XX-XX,表示哪个系统服务哪天的第几次提測:
待測Issue列表:
1. 100
2. 101
3. 102
4. 103
5. XXX
部署资源列表:
1. server包:服务端Jenkins构建链接
2. client包:clientJenkins构建链接
3. 数据库脚本:SVN链接
部署步骤:
1. server包部署步骤
2. client包部署步骤
3. 数据库脚本部署步骤
4. 其它部署步骤
部署注意点:
1. 注意点1
2. 注意点2
部署有问题请与我联系。測试过程中需求有问题请与PO联系,功能測试和反馈依照既定内部測试流程进行。
2.6 部署服务到測试环境(QA)
QA使用DEV提供的部署步骤将相关服务资源到測试环境,假设部署过程中不论什么问题。QA须要与DEV确认部署资源和步骤。
2.7 发送服务部署成功邮件到DEV(QA)
服务部署成功后,QA发送服务部署成功邮件给DEV以告知本次測试工作正式启动。该邮件中须要提供相关服务版本号信息供DEV进行确认。确保部署过程的正确性。
2.8 更新Issue測试状态(QA)
QA依据本次測试范围更新Ticket系统相关Issue状态为“In Test”,并指派Issue为QA人员自身。
2.9 Issue測试(QA)
QA依据需求进行Issue測试,測试过程中依据情况创建新的Issue并对有问题的已有Issue须要又一次设置其状态为“In Progress”并将其指派给开发者。
測试过程中假设对需求有疑问,QA须要与PO进行沟通确认。
2.10 发送測试结果邮件(QA)
QA依据本次測试范围完毕測试工作之后发送測试结果邮件给DEV以告知本次測试过程正式结束。该邮件除起到闭环告知作用之外,简要列举本次測试新建/重开的Issue数量。
測试结果邮件模板可參考:
本次測试结束(未通过):
Test Result:REJECT
1bug in progress
2bugs new
详细请參考Tickct系统上更新。或者(通过):
Test Result:ACCEPTED
至此一个完整的内部測试流程闭环结束。也意味着下一个測试流程開始启动。
三.小结
内部測试流程从下面几个方面强化流程的运行力:
- 闭环管理:通过对三个消息的相互作用,利益相关者了解节点测试的范围和时间
- 团队分工:了解利益相关方和责任分工,每一步都可以浏览到相关责任人
- 信息透明度:流程跟踪和可追溯性,,根据提供的数据召回
- 远程协作:使用引起的地理位置还原过程和平台沟通障碍
轻量级的内部测试过程r \\ u0026研发团队的更多相关文章
- 答读者问(5):关于数学程序猿的作用、r \\ u0026研发工作的实践要求和问题,如求职的影响
最近,有通过微博很多读者.微信沟通,我.我觉得我们学习.对于技术,我们很热情.我也学到了很多东西. 我提取了几个大家比較关心的问题予以答复.请有相同疑问的朋友參考一下. ,欢迎关注.) 版权声明:本文 ...
- 中小研发团队架构实践之生产环境诊断工具WinDbg 三分钟学会.NET微服务之Polly 使用.Net Core+IView+Vue集成上传图片功能 Fiddler原理~知多少? ABP框架(asp.net core 2.X+Vue)模板项目学习之路(一) C#程序中设置全局代理(Global Proxy) WCF 4.0 使用说明 如何在IIS上发布,并能正常访问
中小研发团队架构实践之生产环境诊断工具WinDbg 生产环境偶尔会出现一些异常问题,WinDbg或GDB是解决此类问题的利器.调试工具WinDbg如同医生的听诊器,是系统生病时做问题诊断的逆向分析工具 ...
- Atitit.研发团队的管理原则---立长不立贤与按资排辈原则
Atitit.研发团队的管理原则---立长不立贤与按资排辈原则 1. 组织任命原则概述1 2. 历史的角度看,大部分组织使用的立长不立贤原则1 3. 论资排辈 立长不立贤原则1 3.1. 资格和辈分是 ...
- Atitit 研发团队建设----福利法案--非物质福利与物质福利法案
Atitit 研发团队建设----福利法案--非物质福利与物质福利法案 1.1. 何为非物质福利法案??1 1.2. 福利类型1 1.2.1. 公共福利1 1.2.2. 个人福利2 1.2.3. 组织 ...
- 讨论:研发团队到底应该是制定OKR还是制定KPI?
在讨论之前我们先来了解两个概念: 一.KPI KPI是一套绩效管理的方法.全称为:Key Performance Indicator.中文叫:关键绩效指标. KPI,和我们的“任务分解”不同.任务分解 ...
- 百人研发团队的难题:研发管理、绩效考核、组织文化和OKR
分享一个公司规模近200,研发占一半的创业公司 Worktile 在研发团队管理方面的玩法,仅供百人左右研发团队参考~ 什么是研发团队?简单的说,你熟悉的那帮穿格子衬衫,以程序员为核心组成的团队,就是 ...
- 关于远程办公,微软MVP 15年研发团队的经验分享
今天是2月5日,春节假期结束后的第三天了.为了能够应对来势汹汹的疫情,众多互联网企业纷纷开启了远程办公模式.不知道各团队前两天的远程办公效果如何,我们 Worktile 管理层在大年初四就开始讨论远程 ...
- Atitit.研发团队与公司绩效管理的原理概论的attilax总结
Atitit.研发团队与公司绩效管理的原理概论的attilax总结 1. 四个理念 1 1.1. 绩效管理的三个目的.四个环节.五个关键2 1.2. 绩效目标smart2 2. 考核对象2 3. 绩效 ...
- 是时候给大家介绍 Spring Boot/Cloud 背后豪华的研发团队了。
看了 Pivotal 公司的发展历史,这尼玛就是一场商业大片呀. 我们刚开始学习 Spring Boot 的时候肯定都会看到这么一句话: Spring Boot 是由 Pivotal 团队提供的全新框 ...
随机推荐
- DatePicker的使用
activity_main.xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android ...
- Java提高篇(三二)-----List总结
前面LZ已经充分介绍了有关于List接口的大部分知识,如ArrayList.LinkedList.Vector.Stack,通过这几个知识点能够对List接口有了比較深的了解了.仅仅有通过归纳总结的知 ...
- C语言中字符串如何转换为二进制、八进制、十进制、十六进制
在C语言某个程序当中需要把文本16进制转换成对应的16进制数,比如字符串"0x1a"转换成10进制的26,可以用以下函数来实现 相关函数: atof, atoi, atol, st ...
- hdu1151 Air Raid,DAG图的最小路径覆盖
点击打开链接 有向无环图的最小路径覆盖 = 顶点数- 最大匹配 #include <queue> #include <cstdio> #include <cstring& ...
- xcode Workspaces
A workspace is an Xcode document that groups projects and other documents so you can work on them to ...
- atitit.java方法属性赋值and BeanUtils 1.6.1 .copyProperty的bug
atitit.java分配给属性值方法and BeanUtils 1.6.1 .copyProperty的bug 1. core.setProperty(o, "materialId&quo ...
- JVM必备指南(转)
本文由 ImportNew - xiafei 翻译自 anturis.欢迎加入翻译小组.转载请见文末要求. 简介 Java虚拟机(JVM)是Java应用的运行环境,从一般意义上来讲,JVM是通过规范来 ...
- Mysql加入用户时的错误问题
比如:加入用户 insert into mysql.user(Host,User,Password) values("localhost","test",pas ...
- Android点滴---ViewHolder通用,优雅写法
近期在做项目时,又要写 ViewHolder. 突然想到网上看看有没什么好的写法! 不知道你是不是也烦透了写那些没有技术含量的ViewHolder 看看这些.也许会有收获! 然后就找到了以下两篇文章( ...
- WPF换肤之二:可拉动的窗体
原文:WPF换肤之二:可拉动的窗体 让我们接着上一章: WPF换肤之一:创建圆角窗体 来继续. 在这一章,我主要是实现对圆角窗体的拖动,改变大小功能. 拖动自绘窗体的步骤 首先,通过上节的设计,我们知 ...