到底哪些事情属于测试人员的职责?

标签: 测试 | 发表时间:2013-07-01 07:51 | 作者:o2o_o2o
出处:http://blog.csdn.net

最近两天看了不少关于测试价值,该如何做测试,该如何参与开发过程的文章,再加上我自身的一些经历,有感而发,聊下自己的价值观。

文章一—— T-Shaped Testers and their role in a team

这实际是一篇老文章,但里边的观点——测试应该做些什么,我是很是赞同。以下是节选并附上简单翻译(如果想看完整版,请点击文章标题):

I've never been comfortable with the concept of a separate test team and associated "phases" of testing. 
我太不喜欢“不同的测试团队”和“不同的测试阶段”的概念。

I believe that finding bugs is just one aspect of a testers role.
I don't think finding bugs is just the responsibility of the tester either.
测试不仅仅是找到BUG。

I also believe that testers should use their skills in other parts of the project cycle, whether that cycle is two weeks or two months or two years.
One person capable of fulfilling a few roles reasonable well seems like good value and a good asset to delivering value. Even in traditional environments with more structured roles T-shaped people can be found serving multiple roles.
测试应该更多参与到项目生命周期,做更多的事情。

Sadly, many people (not just testers) are pigeon holed in to their role, despite having a lot more to offer.
杯具的是大部分人被限制在他们角色中。
I believe that testers, actually – anyone, can contribute a lot more to the business than their standard role traditionally dictates. The tester's critical and skeptical thinking can be used earlier in the process. Their other skills can be used to solve other problems within the business. Their role can stretch to include other aspects that intrigue them and keep them interested.

I believe testing is more than finding bugs; it's about exploring the product, discovering what the product needs to be, discovering the market needs (i.e. A/B Testing), discovering what the product actually does, working out whether the product is suitable for the context of use, questioning the process, improving the process, helping to design the product, improving the product, helping to support it, helping to promote it and ultimately working with the team to deliver value.
我认为测试远不止是寻找BUG,测试应该去探索产品,探寻产品应该做成什么样子,探查市场的需求,看看产品真正能做到什么,看看产品是否合适当前的要求,质疑流程,改善流程,帮助设计产品,改善产品,帮忙支持产品,帮忙推进产品,并始终和团队一起交付有价值的产品。

我们测试人员应该关注得更多,不仅仅停留来找BUG上,停留在测试执行,设计或者管理上。

文章二—— On Testing Purpose and Documented Requirements

作者分享了,他为什么要跟BA谈跟商务(Business)谈,当他去测试一个软件的时候。以下是节选并附上简单翻译(如果想看完整版,请点击文章标题):

"But isn't that what the BA is supposed to do?"

Oh, excellent question.

Certainly a good BA can gain that information and pass it on to the team.  However, with each layer or remove introduced in the information flow, something changes.  Information may be lost.  Other things may be added.  The "clarification" may critically change part of the message.  If I can get as close to the people doing the work as I can, I often learn stuff that is important to me as a tester that other people shrug off as unimportant.
信息会在沟通过程丢失。

If I can understand their needs better, I can exercise the software more efficiently.  If the tests I write and run do not explicitly exercise "the requirements" are they really required?  Are they interpretations of something?
如果我能更好地理解他们需求,我就能更加有效地运用这个软件。

就我个人而言,很难想象一个不了解商业需求的测试人员,会做得很好,即使是初级测试人员,只是在执行测试用例。知道一个软件、一个功能的目的,知道它是用来解决什么样子的问题,更多的业务知识会为测试人员带来很多的灵感。

文章三—— The Value of Testing & Test Teams

原文作者提到了测试能带来价值的5种方式,以下是节选并附上简单翻译(如果想看完整版,请点击文章标题):

  1. Each time a tester questions about an ambiguous, incomplete or missing requirement, she is adding value by questioning the process.
    测试质疑模糊,不完成或缺少需求时,就是带来价值。
  2. Each time a tester questions the testability of a requirement or even a product, she is adding value by questioning the product requirements.
    测试质疑需求或者产品的可测试性时,就是带来价值。
  3. When a tester reviews a design and questions the validity of the design, she is adding value by blocking a faulty design being built in to a faulty product.
    测试审查设计,并质疑设计的有效性时,就是带来价值。
  4. Each time a tester questions the code, she adds value by stopping defects seeping into the next phase of product development. You might say,”Not every tester reviews the code.” True, but isn’t it common to have entry criteria for testing that requires evidence of code review or unit testing? If you are a developer-tester, you know how to peer-review the code.
    测试质疑代码时,就是带来价值。
  5. When a tester finds even a single defect, she is adding value by exposing the hole in the product. The product owner may delay or defer the fix for it for product delivery timelines, but they cannot ignore the existence of a defect in the product.
    测试发现BUG时,就是带来价值。

测试不应该只把眼睛放在具体的产品上,就应该考虑整个软件开发过程中每个环节上去,看看是不是能发现BUG。只要能带来价值都是好事情。

个人观点

测试不仅需要测试产品,而且需要测试需求、设计等各个环节以及过程本身。关注如何做对的事情,减少不必要浪费。

我们都知道一个观点,越早发现BUG,修改的代价会越低。 测试就需要尽早参与到开发过程的每一个环节中去。
我不知道目前国内公司的普遍情况,测试能做些什么事情,但我知道的确有些“大”公司,流程分得较细,传统的测试加入较晚,参与的阶段有限,比如,需求文档创建时的Review就不会参与;限制传统测试人员做UAT的事情,因为还有专人在专门的UAT阶段做UAT。 说句题外话,真不建议应届生加入这种公司,过程过僵化,测试能接触得东西过少,能学习到就过少。

这里想说得是,如果流程分得细,阶段明显,代价会更大,需要招更多的人,知识传递更费时费事;需求阶段,设计阶段Review的人,如果没有带着一些测试思维来做Review,效果很可能有些折扣。 就个人的眼光看来,还不如直接让测试更多地更早地参与项目,为整个过程服务,不仅仅为产品测试服务。对公司,减少了消耗,对员工,增强了技能,开拓了道路。

敏捷倡导跨功能的团队,各种角色的成员尽量都坐在一块。其目的之一,使各个角色更好的协作,也使各个角色间的界线有些“模糊”,比如,现在蛮出名的DevOps角色,就是开发和运维的混合体。 我目前期待能够出一个测试和分析师(BA)或者领域专家的混合体,一个能分析、判断业务,能和商务沟通,能做用户代表,能测试、能检查设计和产品,保持测试思维,持续关注价值的角色。姑且先东施效颦,仿造一个合体词出来,TestAnal或者Testlyst。

作者:o2o_o2o 发表于2013-7-1 7:51:44 原文链接
阅读:116 评论:0 查看评论

相关 [测试] 推荐:

测试

- 香姜 - 韩寒
测试......>>点击查看新浪博客原文.

Android单元测试与模拟测试

- - 神刀安全网
考虑可读性,对于方法名使用表达能力强的方法名,对于测试范式可以考虑使用一种规范, 如 RSpec-style. 不要使用逻辑流关键字(If/ese、for、do/while、switch/case),在一个测试方法中,如果需要有这些,拆分到单独的每个测试方法里. 测试真正需要测试的内容,需要覆盖的情况,一般情况只考虑验证输出(如某操作后,显示什么,值是什么).

免费测试VPN

- 勇 - iGFW
lusovps目前提供免费15天的PPTP VPN试用服务,. 申请地址:https://cart.lusovps.com/cart.php?a=add&pid=13. WHMCS注册系统,可以参考 http://igfw.tk/archives/3727. 注册后无需审核,立刻激活,帐号信息会发至邮箱.

HTTP负载测试

- - 博客 - 伯乐在线
英文原文: ON HTTP LOAD TESTING 来源: oschina. 有很多人在谈论HTTP服务器软件的性能测试,也许是因为现在有太多的服务器选择. 这很好,但是我看到有人很多基本相同的问题,使得测试结果的推论值得怀疑. 在日常工作中花费了很多时间在高性能代理缓存和源站性能测试方面之后,这里有我认为比较重要的一些方面来分享.

Android单元测试

- - CSDN博客推荐文章
    单元测试不管对于初学编程还是已经工作了很久的开发者来说,都不乐意花时间去写认为没用的代码进行测试,只要交给测试人员就行了,虽然这样也能把软件改出来,但也许你要花上几倍的时间去修改问题,如果在开发的过程中花点时间去写单元测试代码,把尽可能出问题的地方都测试一遍,把问题扼杀在最开始的地方,这样你就不必为后来找问题出处而烦恼.

mongodb性能测试

- - 数据库 - ITeye博客
1) Mongodb的非安全插入方式,在一开始插入性能是非常高的,但是在达到了两千万条数据之后性能骤减,这个时候恰巧是服务器24G内存基本占满的时候(随着测试的进行mongodb不断占据内存,一直到操作系统的内存全部占满),也就是说Mongodb的内存映射方式,使得数据全部在内存中的时候速度飞快,当部分数据需要换出到磁盘上之后,性能下降很厉害.

Android集成测试

- - 百度质量部 | 软件测试 | 测试技术 | 百度测试
  Android集成测试主要是在单元测试的基础上测试接口访问或者异步任务是否正确,在. 移动凤巢系统中,大概有30+个接口需要测试,他们都遵循一个特定的访问模式:前台的. Activity获取到触发事件后,将它传给这些接口,这些接口都是AsyncTask的实现——即后台. 异步线程执行某个任务(一般是发送http请求到后端服务或者执行存取数据库等耗时操作),.

测试touch事件

- - Kejun's Blog
进入触屏时代意味一切要对触屏友好. 今天仅仅测试了ios6,其它版本包括android还不清楚差别有多大. 看了PPK的touch兼容表(http://www.quirksmode.org/mobile/tableTouch.html),深感刚准备告别ie6,又迎来了一个新的混乱时代,苦逼的前端工程师们永远摆脱不了兼容的魔咒.

impala测试报告

- - 开源软件 - ITeye博客
10.200.187.86 cslave1 4核 3G. 10.200.187.87 cslave2 2核 4G. 10.200.187.88 cslave3 2核 4G. 10.200.187.89 cslave4 2核 6G. 1.在内存够用并且是简单sql条件下,impala相比hive执行效率高很多,简单的sql在百万级别数据中运行,耗时几秒甚至不用一秒.

Web 前端测试

- - Web前端 - ITeye博客
Web 网站测试流程和方法(转载). 进行正式测试之前,应先确定如何开展测试,不可盲目的测试. 一般网站的测试,应按以下流程来进行:. 1)使用HTML Link Validator将网站中的错误链接找出来;. 2)测试的顺序为:自顶向下、从左到右;. 3)查看页面title是否正确. (不只首页,所有页面都要查看);.