做了多年的研发工程师,在所处的环境中,所接触的开发人员中很少有看重对自己代码进行测试这项工作的。大多研发人员往往是写好了代码运行起来,简单做下测试,甚至不去测试就抛给接口使用者或者质量管理人员。而且理由很充分“没时间...;我觉得应该没问题...;这种简单的事让专职人员去测试,否则浪费自己的时间....”从这些话首先该否定的是其人的职业素养,还有就是设计的代码结构不好测试,或者根本就写不出好的测试demo。

记得我们曾经的团队开始强调测试是在工程渐渐庞大,模块逐渐细化,人员参与较多时。因为每每在联合调试时,总是相关人员的噩梦,往往每个人都会被系统的某个bug打断现有工作,还时不时会出现互相埋怨互相推脱bug责任的情况出现,等定位出bug再分到具体的人头上。一个bug牵扯到一个团队,算一笔账,这个团队有6个人,假设在自己的模块中每人平均出现5个bug,这样在系统中就有30个bug出现,可能在测试过程中每个人会被中断30次去协助他人定位bug,这种对一个bug而言,非相关人员产生的中断打扰和时间浪费是明显和巨大的。当然,我只是举个例子,现实中也许不会这么极端,往往是两三个人会出现这种协作情况。但是对相关人员这也是不可忍受的。

怎么办呢?引入单元测试,反对声很大,其中原因主要有两个:1.如果不和别人的模块一块联合,没法做测试;2.要自己模拟某种操作还要造数据太浪费时间;第一种情况说白了就是写不出单元测试,在你做这个埋怨时先看看自己设计的程序,我想如果你如果严格做到了高内聚,低耦合;业务和功能分离;或者经典的MVC模型,怎么会做不了单元测试;第二种情况完全就是捡了芝麻丢了西瓜的典型表现,就拿我刚才举的例子而言,你把时间成本都浪费到后期的联合调试和定位bug责任人,甚至到了质量部门再因为各种边界测试,压力测试找你上门。

最终我们的团队还是没有强制单元测试,也许有程序架构的问题,也许有项目周期太紧张的问题,但是我觉得更多的是大多数人没有认识到单元测试对一个大系统重要性,甚至写好程序自我测试都做不到,自信到总是来来回回的不停发布新的fix版本。

也许是我深受其害,也许是我很在意别人对我程序的看法,我尽量要求自己在写代码时做好单元测试,在完成程序时自己多测测,多运行,多点点。因为我觉得这样当我提交自己的模块,自己的程序时心里才踏实,不然还真是“担惊受怕”。

附件中有我经常使用的单元测试框架gtest的学习文档,我整理自CoderZh的技术博客

附件:http://down.51cto.com/data/2361908

本文转自永远的朋友博客51CTO博客,原文链接http://blog.51cto.com/yaocoder/1081054如需转载请自行联系原作者

yaocoder

开发团队测试的难与易相关推荐

  1. 重读《从菜鸟到测试架构师》-- 开发团队做的远不仅是开发

    上回说到小艾跟着导师修炼了一段基本功之后,也明确了自己的专业技能学习道路,却在几次转头的瞬间发现身边的每一个人都似乎在做着不同的事情,不是说好的一个团队嘛,为什么你做这个,他做那个呢?小艾还真是疑惑, ...

  2. 敏捷开发团队管理系列之二:程序与测试团队I

    这是敏捷开发团队管理系列的第二篇.(之一,之二,之三,之四) 几个真实案例 这几个团队都是我自己亲身经历的团队,从质量的角度来分析敏捷团队的工作方式. 第一个是一个较为大型的团队,约有25-30人,研 ...

  3. 敏捷开发团队管理系列之四:程序与测试团队III

    这是敏捷开发团队管理系列的第四篇.(之一,之二,之三,之四) 整体上有两种测试团队的模型,既然都有存在,自然是各有各的道理.城里城外的人倒不必互相羡慕,只是要观察对面的优点,分析自己的缺点,尝试做点事 ...

  4. 敏捷开发团队管理系列之三:程序与测试团队II

    这是敏捷开发团队管理系列的第三篇.(之一,之二,之三,之四) 测试团队的价值 这样看来,敏捷开发的质量保证问题,都被发开团队解决了,测试团队的价值何在? 这个可以从第一个项目组后来的发展来分析. 在整 ...

  5. 开发团队里是否需要测试人员?

    最近在看"软件随想录",里面有个非常有名的"乔尔测试",其中有一个问题是"你的团队里面是否有测试人员",如果有的话就加分,表明团队对产品质量 ...

  6. 软件测试团队分为哪些人员,产品团队、开发团队和测试团队是什么关系?

    产品,开发和测试三者具有同等的重要性,三者之间相辅相成,相互制衡.当然产品是领头羊,开发和测试都是依据产品开展工作.类似于三权分立制度,产品相当于立法,开发相当于行政,测试相当于司法. 产品经理要提前 ...

  7. 软件测试中开发团队和测试团队的职责

    开发团队职责  1.在开发时,对软件特征完成单元测试:  2.为测试团队准备好项目部署以供测试:  3.在将待测试模块/部件发给测试团队进行测试之前,首先应该进行集成测试/冒烟测试:  4.在 ...

  8. 小型开发团队的测试误区

    小型开发团队的测试误区 小型开发团队的特点主要表现在开发成员少,整个团队成员在10人以内:团队成员岗位较多重叠,开发人员常常是测试人员,项目工作量大.上线时间紧迫,相比大型开发团队来说,没有专业的测试 ...

  9. 互联网团队工具大全--开发、测试、部署、协作

    原文网址:互联网团队工具大全--开发.测试.部署.协作_IT利刃出鞘的博客-CSDN博客 简介 本文介绍互联网团队(Java后端.Web前端.测试.产品)一些常用的.好用的工具.(持续更新). 本文包 ...

最新文章

  1. houdini + maya的pulldownit
  2. Kibana 用户指南(使用Flight仪表盘探索Kibana)
  3. python单词意思-python实现单词本功能
  4. mysql触发器求属性和_MySQL触发器demo
  5. 机械设计说明书_如何做机械设计课程设计?这篇文章总结很详细
  6. vue如何判断已经有定时器在执行_中国股市:如何判断当日涨跌?“分时图”已经全部告诉你了...
  7. android查看应用权限管理,通过adb列出Android应用程序的权限
  8. 大数据分析存在哪些困难
  9. Lync 小技巧-26-由于服务器连接问题,一些演示功能不可用
  10. 使用queryperf对DNS服务器作压力测试
  11. scala中的集合框架
  12. 一种基于复制粘贴的cam350邮票孔拼版教程(三) 导出钻孔文件
  13. 仓库管理系统数据库设计
  14. Qt自定义实现的日历控件
  15. 免费版的 IDEA 如何使用 Tomcat
  16. user interface(用户界面)
  17. katana工程搭建以及模型相机的导入
  18. python图片自动上色_自己实现黑白图片自动上色AI(一)
  19. 青春期发育阶段的测量
  20. 电源高性能和平衡区别 文件服务器,win10电源高性能和平衡区别具体有哪些细节...

热门文章

  1. IDEA 快捷键终极大全
  2. python爬虫--如何爬取翻页url不变的网站
  3. illustrator下载_Illustrator笔工具练习
  4. 算法精讲:分享一道值得分享的算法题
  5. mongodb数组字段prefix匹配返回
  6. 算法:把数组排成最小的数
  7. WebP 在减少图片体积和流量上的效果如何?—— WebP 技术实践分享
  8. bupt summer training for 16 #8 ——字符串处理
  9. 在VS中设置比较和谐的字体和颜色的方法
  10. JavaScript面向对象-静态方法-私有方法-公有方法-特权方法,学习