[转]在国外做软件测试工作的体会

上一篇 / 下一篇  2013-01-07 12:32:49 / 个人分类:测试管理

   [转贴]
   经常在网上看到有在国内从事软件测试的同行抱怨:测试不受重视,测试管理混乱,产品质量差等问题。说到底这都是管理上的问题。我想谈谈自身的经历。

我毕业后在外包公司工作,客户是一家美国公司,产品发展前景挺好,也有一笔不菲的风险投资。我想说说他们的测试管理制度。

首先,他们有一个很好的资源共享平台,我们叫Wiki,上面包括每一个版本的任务,每一项任务的开发负责人及测试负责人,相关的Spec以及其他开放文档。而且,每当这一版本的任务快完成时,下一版本的任务的雏形就出来了。

其次,开发和测试严格按照软件生命周期执行。

第一阶段:

需求出来后,开发和测试同步进行,开发完成代码实现,测试完成testoutline和test case,这些文档都会上传到Wiki上。我们在理解Spec和完成testcase的时候,会及时提出自己的问题,这些问题一般在第二天就能从开发人员得到反馈。而test outline和test case最终完成后也要经过开发人员的验证,有时他们会提出自己的意见,测试要点和一些你未曾想到的case。

第二阶段:

新功能的测试阶段,测试提交bug,开发修改bug,这一过程由JIRA管理。

第三阶段:

回归测试:

每一个版本的下半阶段都是做回归测试,这是一个比较漫长的过程,一般分两部分,一是执行所有的case(一万之多,有赶超两万之势),二是执行任意测试。在执行case的时候,我们还要同时更新case,有些是更新内容,有些是添加新的bug,有些case可能会过时。当然,新的bug也会提交到JIRA。在这个阶段,测试人员会安排在不同的平台上测试。可以说,在做回归测试的时候,测试覆盖率极高。

第四阶段:

预发布版本测试:

做完回归测试会形成一个较稳定的版本作为预发布版本,预发布版本会被部署到另一台测试服务器上。这时候需要在不同平台上做一次QL(Quick Look)及任意测试。预发布版本上一般不会再迁入changlist,除非在此之上发现了较严重的bug,就会有新的r2的预发布版本以及再一次的测试。

第五阶段:

内部测试:

新版本发布前一两天可以说是全民皆兵,公司里大大小小所有人都进行测试,包括CEO。(当然CEO不会自己来报bug,她会把问题反馈给我们的技术副总裁)。当然他们所报的bug也会成为我们的谈资。作为测试人员,我们不仅追求bug数量,更要追求bug被fix的概率。当发现一个bug时,首先我们得确定它不会成为won't fix或invalid的问题,并且它can be reproduced,然后它不会duplicate某个已有的bug,如果这个已有的bug已经被close了,就应该reopen它。而这些非测试部的人不管三七二十一,看到是个问题的就报,一天下来新加的bug数就该让相关的开发人员头疼死了。好在这些问题都会一个个地得到它们应有的解决方式。

第六阶段:

产品发布测试:

产品发布前会在和产品环境相同的服务器上做一次QL(Quick Look)和任意测试,产品发布后又会在产品服务器上做一次QL(Quick Look)和任意测试。

第七阶段:

测试整理:

这一阶段主要是整理在这一版本生成的测试文档和测试用例,新功能的用例和一些之前未覆盖的用例会被导入测试用例管理工具。


TAG:

引用 删除 Trista_Small   /   2013-01-07 14:33:20
原帖由Trista_Small于2013-01-07 14:31:24发表
发现你跟我的情况基本上是一模一样的。不过我现在倒是在困惑期,跟你交流一下我的想法。
我们公司名义上.

楼主转帖时可以带上出处,这样可以直接去跟原文作者交流。。。我是回复完之后才发现是转帖的,说了这么一大堆。。。
引用 删除 Trista_Small   /   2013-01-07 14:31:24
发现你跟我的情况基本上是一模一样的。不过我现在倒是在困惑期,跟你交流一下我的想法。
我们公司名义上是美国一家五百强公司的某个子公司,实则就是帮他们做外包,一切需求都来自美国,我们不管是开发还是测试,都不接触需求。
像很多国外的企业一样,我们采取敏捷开发模式,不知道你们公司是不是用这个,不过你说你们的bug是用jira来管理,所以我猜想你们还是用的瀑布开发模型?
我们的开发流程一般是这样:
美国那边获取需求,领导层把需求分解成一个一个的userstory,再把每个userstory分配到各个开发团队,并且以两个星期为一个阶段,我们称之为sprint,每个阶段完成一定数量的userstory,并生成一个小的可以测试的版本交由测试人员测试。测试完毕再开始下一个阶段的工作。这样不断迭代,最终完成一个产品。
接下来在产品交付客户使用之前,会有一个release test,就像你说的那样,全民出动测试,包括CEO。这里就出现问题了,他们之中有的非测试人员对我们的产品完全不了解,不知道这个产品是用来干什么的,也来进行测试,他们测试的根据就是我们测试人员写的测试用例。这样对我们的测试用例的要求就简直是严苛了。不是我不想认真对待我们的测试用例,但是如果要写成随便一个人就能照着测试用例进行测试的话,那我们是要把测试用例写成使用说明了?而且个人认为,全民出动的作用并不大,反而是扰乱了大家,尤其是对开发人员来说。没来由地每天接到极大数量的不知所谓的bug,费很多时间去跟他们解释这些bug并不是bug或者已经改了或者采取了其他的方式解决了等。
测试流程改进这个问题,我们测试人员和公司一直在努力,但是总得不出一个较好的方案。我相信国外的测试流程会比国内的要完善一些,但也不是完全可取的。各行各业都会有各自业内的难题,我们需要做的,就是在专攻领域知识的同时,思考怎样能让我们的行业变得更好并不断努力尝试以走出一条proper and perfect的路。
 

评分:0

我来说两句

我的栏目

日历

« 2024-04-24  
 123456
78910111213
14151617181920
21222324252627
282930    

我的存档

数据统计

  • 访问量: 1421
  • 日志数: 2
  • 建立时间: 2013-01-07
  • 更新时间: 2013-01-07

RSS订阅

Open Toolbar