`
yzd
  • 浏览: 1818521 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

单元测试之组织保障

 
阅读更多
<p style="text-indent: 21pt;">这几天一直都在思考新项目中,如何促使公司能够最终真正使用上单元测试。前几天发的一篇《<a href="http://blog.csdn.net/xiammy/archive/2007/04/28/1588077.aspx"><font color="#669966">单元测试之关键问题解答 </font></a>》主要写的是我在实践过程中,针对我遇到的一些非技术问题的思考。后来我看到一篇和我博文一样标题的文章《<a href="http://blog.csdn.net/RichardSundusky/archive/2007/05/03/1595229.aspx"><font color="#669966">单元测试之关键问题解答</font></a>》。拜读了之后,发现他对我的思考方向有些误解。虽然这样,因为这些导致他的失望,我还是表示十分的道歉。<em>补充一下,这篇文章不错,推荐大家阅读一下。</em></p>
<p style="text-indent: 21pt;">前几天和我的微软同学聊起微软的自动化测试的时候,他向我提到了几个概念BVT(Build Verification Test)和Smoke Test,这让我注意到一个问题,TDD中并没有解决好复杂系统的全面测试问题。要知道大多数人的单元测试概念,是有KENT BECK的测试驱动开发中带来的。但是,要让单元测试完整应用起来,是需要相当的组织结构保障的。</p>
<p style="text-indent: 21pt;">在聊天的过程中,有一点非常值得关注,那就是微软的Software Design Engineer in Test (SDET)角色。据他讲,在微软,SDET和开发的待遇是一样的。显然,微软是非常重视测试的。</p>
<p style="text-indent: 21pt;">在开篇提到的另一篇同名称的文章中,也对单元测试做了诠释,而且从文章来看,他应该是一位咨询师。我这里不说其他,但从单元测试需要咨询,就说明了一个问题,单元测试不是只靠技术和理念的认识就能简单做起来的。</p>
<p style="text-indent: 21pt;">从很多公司的尝试未果,就可以看出,我们相对于微软这类成功应用了自动化测试的公司相比,我们并没有很好的组织保障。让公司里的开发来做测试,一来会感觉实在浪费,二来重复性工作和创造性工作的不一样,会让很多人止步。</p>
<p style="text-indent: 21pt;">这两年,我一直被领导困扰着。他们在思考问题的时候,总是说什么组织结构。而我却更重视技术解决问题。想想看,如果能完全靠技术解决问题,那么就不需要管理那么麻烦了。我相信很多人也会和我有同样的观点。</p>
<p style="text-indent: 21pt;">可是,不要忘了,单元测试的主体是人。大凡是人,就必须有管理。我这里所说的管理,不是领导的管理,而是组织结构的保障。在最近的工作过程中,我逐步意识到了保障的力量。忽视组织保障,团队的工作会变得松散而无方向;反之,大家会知道做什么会得到鼓励,做什么会得到批评。</p>
<p style="text-indent: 21pt;">因此,相对于大讲那些测试理论,最先要解决的是<u>组织结构</u>。这才是保障单元测试成功实施的重要措施。我这里主要是从推动单元测试的工作入手的。因此考虑其组织结构,可以由公司的技术高手成立,辅助项目开发。这个组织在项目相对独立,直接对项目经理负责,而不对项目进度负责。</p>
<p style="text-indent: 21pt;">在组织结构问题中,我重点说明一下<u>进度和质量</u>的问题。大家很容易明白,项目中对进度的反应是如何的强烈。事实上,由于质量的衡量标准相对比较复杂和不明确,导致质量在进度面前,经常容易被牺牲。反过来,我们现在的单元测试就是要从质量入手,因此其组织机构一定要相对独立于保障进度的组织。这样,我们的工作才容易进行下去。</p>
<p style="text-indent: 21pt;">以前单元测试往往是开发的Leader提出来的,但是,Leader往往需要对进度负责,单单从这点来看,单元测试往往会以失败告终是不足为怪的。</p>
<p style="text-indent: 21pt;">在建立了单元测试机构之后,就是建立测试流程规范。在推广初期,并不一定需要建立完备的流程。只需要考虑好几个关键点,让单元测试工作起来。好多机制就是越转越好!否则,再完备的机制也容易因为磨合不好而最终失败。</p>
<p style="text-indent: 21pt;">重要的是,建立单元测试报告的优先处理机制。对于单元测试的失败,应该有考核机制来保障必须在第一时间得到处理。在初期,细节的处理,并没有那些测试理论中讲得那么重要。关键要与你的现有组织磨合顺利。</p>
<p style="text-indent: 21pt;">等到你的项目中的单元测试成功运作之后,再重新考虑如何优化流程。流程和组织一般来说是相辅相成的。可能在优化流程的时候,再修改组织结构。</p>
<p style="text-indent: 21pt;">关于微软如何进行自动化测试,推荐大家阅读我整理转载的《<a href="http://blog.csdn.net/xiammy/archive/2007/05/02/1594495.aspx"><font color="#669966">微软的软件测试方法</font></a>》。</p>
分享到:
评论

相关推荐

    项目经理学之项目岗位设置

    3. 负责执行代码走读和单元测试,记录单元测试结果; 4. 执行集成测试。 测试经理 主要职责: 1. 独立编写测试计划; 2. 独立编写测试用例; 3. 安排和指导测试工程师/测试员的工作; 4. 协调测试团队内部的工作...

    乙二醇装置动设备单机试车、调试方案.doc

    9.单机试车组织机构 18 10.施工机具 19 11.各个专业人数 19 12.试车记录表 20 1.工程概况 为完成内蒙古易高煤化科技有限公司24万吨/年合成气制乙二醇项目工程动设备单机试运行工作,特编制此方案。本方案用于指导各...

    对智能制造的认识(1).doc

    智能制造系统的特点 和传统的制造系统相比,IMS具有以下几个特征:(1)自组织能力.IMS中的各种组成 单元能够根据工作任务的需要,自行集结成一种超柔性最佳结构,并按照最优的方式运行 .其柔性不仅表现在运行方式上...

    电子信息系统机房设计规范.doc

    5.2 噪声、电磁千扰、振动及静电 6 建筑与结构 6.1 一般规定 6.2 人流及出入口 6.3 防火和疏散 6.4 室内装修 7 空气调节 7.1一般规定 7.2 热负荷计算 7.3 气流组织 7.4 系统设计 7.5 设备选择 8 电气技术 8.1 供配电...

    对智能制造的认识.doc

    智能制造系统的特点 和传统的制造系统相比,IMS具有以下几个特征:(1)自组织能力.IMS中的各种组成 单元能够根据工作任务的需要,自行集结成一种超柔性最佳结构,并按照最优的方式运 行。其柔性不仅表现在运行方式...

    智能设计关键技术.doc

    第六章 智能设计关键技术 6.1 智能制造系统的设计 智能制造系统是基于人工智能研究,为应对不断增长的设计信息和工艺信息,以及随 之带来的生产线和生产设备内部信息的增加而出现的先进制造系统。通过借助计算机模 ...

    智能设计关键技术(1).doc

    第六章 智能设计关键技术 6.1 智能制造系统的设计 智能制造系统是基于人工智能研究,为应对不断增长的设计信息和工艺信息,以及随之 带来的生产线和生产设备内部信息的增加而出现的先进制造系统。通过借助计算机模拟 ...

    计算机网络系统设计方案(2).doc

    结合当前技术发展状况及趋势,考虑项目建设和日后运行的成本,在整体设计、设备 采购、施工、测试运行的过程中严格遵循以下原则: (1)统筹规划 校园网络建设是一个庞大的系统工程,建设之前必须站在整体层面,做好...

    网通交换培训教材

    9.4.5 我国信令网的可靠性保障措施 282 9.5 中国网通NO.7信令网网络结构 284 9.5.1 网通No.7信令网结构 284 9.5.2 长途DXC组网结构 285 第10章 信令点编码计划及信令区划分 287 10.1 国际信令网信令点编码 287 10.2 ...

    达梦数据库_SQL语言手册

    域以至信息领域中数据处理的主流语言之 由于不同的产品,大都按自己产品的特点对语言进行了扩充,很难完全符合 标准。目前在 市场上已将的符合夲作为衡量产品质量的重要指标,并研制成专门的 测试软件,如 目前, ...

Global site tag (gtag.js) - Google Analytics