不想当将军的兵不是好兵,作为一名软件测试工程师,有一天你也有可能接手你们公司的测试团队,带领他们走向人生巅峰,但是作为软件测试管理者,我们怎样才能不让人失望呢?

写这篇文章的出发点是最近确实吸收了很多营养的东西,所以很乐于总结分享,同时也是给自己这段时间的辛苦付出留下点美好的印记吧。

作为一个拥有2年开发+6年测试经验的测试老人,多年工作确实学到了很多,但是真正沉淀下来能与人津津乐道的并不多。

工作第5年的时候,第一次组建测试团队,当时觉得非常成功,现在看来,并没有。

一杯咖啡,一台电脑,关于一个好的管理测试团队的方案,思绪开始了…

并且,感觉还不错…

测试前准备

1.需求分析:与客户沟通过需求后,测试组全组人员参与需求分析,明确项目需求。

2.设计评审:测试人员参加设计评审,提出设计文档的疑惑之处,深入了解业务,做到依据设计文档能到写出完整详密的测试用例。

3.编写用例:依据设计文档,编写测试用例。

4.测试计划:测试计划在测试任务确定后,根据测试任务,测试人员,测试时间等做好规划。

5.执行测试:测试准备工作就绪后,执行测试。

流程图如下:

测试规范流程

开发提测

提测阶段的意义在于确保经过测试人员测试之后的系统无特别严重的缺陷,无阻塞流程的缺陷,保证系统具备流畅的测试条件。

第一轮

第一轮测试的依据是设计文档,产出是测试用例的第一轮结果,也是正式测试流程中最重要的一个环节,理论上应该覆盖100%的测试点,以及50%以上的发散点。在这个阶段应该发现系统中90%以上的缺陷。整个测试耗时占到所有测试工作的三分之一【假设只有2轮测试】。

自动化回归

一轮结束后,发现了系统中大量的缺陷,较为庞大的系统可能有几百个甚至几千个缺陷,在这些缺陷被修复后,整个系统是否引入新的缺陷,是否有新的重大问题,需要自动化脚本来检查。

这时候是回归测试的好时机。

第二轮测试

回归结束后,进行第二轮测试,第二轮测试的重点是验证第一轮的问题是否被修复,是否影响到其他功能模块,同时也要进行高密度的发散测试。

交替测试

交替测试是将测试任务重新分工,同一个问题在不同的测试人员二次测试后,更能保障产品质量。

自动化脚本维护

以上测试工作全部完成后,跟踪redmine,在所有缺陷被修复后,录制最新系统的自动化脚本。

在发包之前,进行整个系统最全面的回归测试。

缺陷单管理

缺陷单是测试过程中具有重要意义的产物,不仅体现了测试人员的专业程度,更反馈了软件开发中暴露的各种问题,认真对待缺陷单,确保所有的缺陷都能被解决是保证产品质量的最基本要求。

缺陷单一般都分为新建、开发反馈、验证、关闭等环节,以RedMine举例,如何规范缺陷单的跟踪管理。

1.Redmine问题新建

Redmine问题单规则:

主题:简单的一句话概括问题,通过主题可以明白该问题说的是什么

描述:还原问题出现步骤(前置条件、测试步骤、预期结果、实际结果必须有)

状态:新建

优先级:一般、严重、紧急

指派给:对应问题开发组组长

提出人:redmine提单人

处理人:对应开发组组长

责任组:该问题对应开发组

原则上所有问题必须要有问题截图

2.问题流转至关闭

  1. 转开发后,开发回复为请验证,问题单状态为已修复

  2. 问题单状态非已修复状态,测试组不予验证

  3. 测试组问题验证过,问题单状态为已关闭/验证不通过/挂起

  4. 已关闭:该问题测试组验证通过

  5. 验证不通过:该问题验证不通过

  6. 挂起:该问题开发当前版本不修改:请对应测试人员让开发在开发回复中回复不修改原因(修改中问题无法挂起,请联系开发人员修改状态)

流程图如下:

原则上最后测试组所提redmine问题单最后只能是已关闭,但由于特殊原因可以允许挂起状态。

特殊原因:该问题不影响用户使用,对用户基本无影响;该问题当前版本修改风险具大,这两种情况可挂起,开发回复中写清楚下个版本修改原因

Redmine历史遗留问题

每月版本正式测试前,测试组确认上月版本遗留问题本月是否修改,上月redmine遗留问题,确认本月版本修改的,测试组修改redmine问题单系统版本号为本月版本,问题单状态改为新建。

3.同问题单流转至关闭流程

流程图如下:

案例剖析

测试人员Co在系统功能测试时发现某个新建数据的操作:新建数据有个生成数量的输入框,生成数量没有做限制,于是Co一次生成了1000万条数据,生成之后,对应页面由于大量的数据导致页面打开极其缓慢,影响到工作效率。那么问题来了?如果是你,会如何解决这个问题呢?

为了解决这个问题,Co提出,删掉生成的这1000万条用不到的数据,将生成数量字段做了条件限制,于是开发人员给生成数量字段加了每次最多生成100条数据。

问题看似解决了…

几天后,领导找到Co,因为当时庞大的数据,正好发现了一个数据同步的问题,因为数据量巨大,导致同步数据的过程中,丢失了部分数据,于是,领导要求恢复千万条数据场景再次同步数据分析下问题原因,但是数据已经被删掉了,且因为数据关联性复杂后台也无法重现。

测试Co是万不会想到这批数据会影响到数据同步,但是引发的数据同步问题同时也引出一个新的问题,就是Co在处理这批大数据时的做法究竟合理吗?

我们知道,系统的问题除了功能问题,还有性能问题,虽然这千万条数据不会影响到功能,但是访问页面变得缓慢了问题本质则变成了性能问题了,而Co则完全没有想到这批数据是不可以删除的,而是应该经过性能分析从而判定这批数据是否有存在的必要性或者如何提高系统的性能以达到大量数据存在时,页面访问流畅无阻。

希望这个案例能带给测试人员一个小小的思考:发现问题的解决方法有很多,但是往往由于考虑不周而选择了最捷径的方法。用简单的方式解决了一个小问题,同时也掩盖了一个大问题。

发现问题,分析问题,不放过任何一个细节,才能保证产品的质量。

看完这篇内容后,相信以下两件事,也会对你的个人提升有所帮助:

1、 点赞,让更多人能看到这篇文章,同时你的认可也会鼓励我创作更多优质内容。

2、 让自己变得更强:想一想,如果你想在测试这个行业一直做下去,你的经验和功能测试技术是远远不够的,你需要进阶,你需要一直丰富你的技术栈!还等什么!

最后:【给做测试的你一波助力】含全栈测试工程师发展路线

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

关注我的微信公众号:【伤心的辣条】免费获取~

我的学习交流群:902061117 群里有技术大牛一起交流分享~

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

好文推荐:

阿里小黑叹息:越来越多的年轻人从职场撤退了?

Python简单?先来40道基础面试题测试下

App公共测试用例梳理

从一名开发人员转做测试的一些感悟

如何做好一个软件测试管理者,高效带好团队呢?相关推荐

  1. 一个软件测试管理者,如何高效带好团队呢?

    不想当将军的兵不是好兵,作为一名软件测试工程师,有一天你也有可能接手你们公司的测试团队,带领他们走向人生巅峰,但是作为软件测试管理者,我们怎样才能不让人失望呢? 写这篇文章的出发点是最近确实吸收了很多 ...

  2. 一个基层管理者需要做好的几个方面

    我以为包括但不限于下面几个方面 1.了解你和团队的使命 作为一个基层的管理人员,你的使命就是创造井然有序.优质高效的工作环境(提供技术知识.提供技能培训.排除障碍.协助属下摆正心态),完成目标. 你要 ...

  3. 怎样做好一个管理者?

    管理者在一个组织中扮演着至关重要的角色.一个好的管理者可以为组织带来成长.创新和成功,而一个差的管理者则可能导致组织陷入混乱.失误和失败.怎样做好一个管理者呢?本文将从以下几个方面进行探讨.当然,要提 ...

  4. 如何做好一个项目经理

    第一部分:软件项目经理的要求 首先是一个管理者,其次熟悉某些工具,某几种语言,行业背景,项目管理技能. 软件项目经理面临的恶劣环境,我们绝大部分软件企业运行在相对混乱的状态(CMM一级),组织不大可能 ...

  5. 好的开始是成功的一半 -- 怎么做好一个项目的启动...

    俗话说号的开始是成功的一半,管理一个项目也同样是这样,很多的时候,项目运行中的遇到的问题往往就是在填项目启动时所埋的坑.一个好的项目启动能极大的提高项目成功的概率,避免项目过程中很多的风险.这里我简单 ...

  6. 带研发团队后的日常思考1 初级管理者的困惑

    Python微信订餐小程序课程视频 https://edu.csdn.net/course/detail/36074 Python实战量化交易理财系统 https://edu.csdn.net/cou ...

  7. 怎样做好一个服务器管理员?

    //转载自http://server.51cto.com/sManage-222985.htm 除了文章下面的留言收集外,51CTO的BBS也是广大"午饭"交流的重要平台.今天,小 ...

  8. 如何做好一个中层管理?

    中层管理在一个企业中扮演着至关重要的角色.他们作为企业的中间管理层,既需要向上汇报,也需要向下管理.因此,中层管理者需要具备一定的管理技能和领导能力.那么,如何做好一个中层管理呢?以下是一些建议. 1 ...

  9. 如何做好一个开源项目之徽章(二)

    在上一篇[如何做好一个开源项目(一)],笔者已经介绍过开源项目运作和维护的一些理念了,本篇开始,笔者将着重于介绍一些开源项目维护过程中的一些细节,比如徽章.构建等等.由于最近经常出差,所以博客有中断, ...

最新文章

  1. php get 传循环出来的参数_PHP性能优化小技巧
  2. crontab(定时任务操作)
  3. java 空格乱码_java 中文乱码以及空格乱码解决方案总结
  4. 宜昌市计算机一级考试真题,2018年上半年湖北省宜昌市计算机等级考试考务通知...
  5. halcon知识:select_shape究竟怎么用(1)?
  6. BZOJ 4516 [Sdoi2016] 生成魔咒
  7. css text-align-last设置末尾文本对齐方式
  8. 百度地图Label 样式 setStyle
  9. 在以太坊模拟链及私链上编译、部署智能合约
  10. WGS-84与北京-54、西安-80及地方坐标系的转换
  11. 有关CATIA软件的几个使用技巧
  12. HTML怎么设置左边外距5像素,css怎么设置左边距
  13. 40款用于简洁网页设计的光滑英文字体【上】
  14. 漫画:骚操作系列(必须掌握的疯子找座问题)
  15. K-divisible Sum
  16. 搜狗输入法英文字母间隔大
  17. 测试分类方法(含常见面试题)
  18. java中如何将字符串数组转换成字符串(转)
  19. 星巴克中国门店突破6000家,上海继续领跑全球,开出第1000家 | 美通社头条
  20. 解决WIN/MAC平台谷歌浏览器/Chrome添加插件安装时显示程序包无效:CRX_HEADER_INVALID的问题

热门文章

  1. c语言编程为啥弹出的框会闪退,js中提示框闪退问题
  2. 关于苹果的iOS cercertificate的创建问题
  3. 浅析java.lang.IllegalArgumentException: URI is not absolute
  4. Flink之DataSet迭代计算
  5. [4G5G专题-76]:流程 - 4G LTE PLMN选择、扫频、小区搜索、系统消息读取、小区选择过程
  6. Windows 10访问共享时提示“过时的SMB1协议”的修复办法
  7. Centos jenkins 插件安装失败
  8. 算法回顾---贝叶斯分类器
  9. a different object with the same identifier value was already associated whith
  10. 数据杂谈:CIO和CTO的区别(首席信息官首席技术官)