来自 PractiTest 的 Joel Montvelisky 和 Tea-Time with Testers 网站共同进行了一次测试行业状况的调查,并将测试结果发布于 2013 测试行业状况报告中。这次调查以测试和 QA 社区的成员为对象。在采用的测试技术和实践、测试自动化以及测试人员所面临的挑战方面,这次调查为业界人士提供了深入了解的机会。
Joel 将在 QA&Test 大会上发表一次演讲。演讲主题为如何成为一个更专业的测试人员。InfoQ 将会通过实时新闻与 Q&A 的方式全面报道这次大会的动态。
InfoQ 对 Joel 进行了采访,采访的内容包括测试行业状况调查、敏捷测试、测试人员技能以及测试面临的挑战。
InfoQ: 是什么促使你决定做一次测试行业状况的调查?
Joel: 起初,我想要写一篇博文,介绍在当今测试行业里,一个普通的测试人员所面临的挑战。
我原本想在网上查找一些客观的资料,但什么都没有找到。我惊奇地发现,除了一些特定的个例(比如,能找到一些关于自动化 __ 功能 __ 测试或者移动设备测试的资料。但缺乏介绍一般性知识的资料)之外,没有人做过这方面的研究。
在 __ 寻 __ 找资料的过程中,我联系了我的朋友,来自 __Teatime with Testers__ 网站的 __Lalit Bhamare_。我们达成了一致:进行一次调查是一个好主意。它不仅能对测试行业现状进行反思,__ 而且如果能够做到 __ 每年进行一次,_就能够 __ 对测试行业的发展进行逐年评估。
我们在去年年底(2013)启动了测试行业状况的调查。这次调查得到了很多来自测试社区的人们的支持。他们帮助我们宣传这次调查活动,并使外界对我们的项目产生了兴趣。因此,我们 __ 的调查对象包括了 __ 很多来自不同国家和组织的测试人员。
_ 测试行业状况报告已于 __2014__ 年 __2__ 月左右发布。这个报告收到了很多来自测试社区的人们的反馈,_对此 __ 我们感到很高兴。
我们一起进行了很好的反思。关于哪些问题应该得到改善和哪些额外领域应该更深入了解,我们也得到了许多这些方面的评论和想法。
InfoQ: 报告中提到许多公司正在使用敏捷实践方法。貌似在测试中,人们正在越来越多地采用敏捷方法。为什么会发生这种情况?
Joel: 我已经在软件开发和测试领域工作了 __15__ 年。迄今为止,我已经见过很多_“方法论上的革命”__。_
我记得曾经所有人都认为 __UML__ 将会成为解决我们所有问题的方法_/_语言。然后,我们都开始阅读 __XP__ 方面的资料,了解如何裁剪流程以创建更简单的开发方法。最近几年,敏捷和 __SCRUM__ 已经流行了起来。
_ 我认为敏捷的不同之处在于,采用敏捷方法是相对容易的。因为对于你所要做的事情,没有真实的阈值来划分你是否正基于一种敏捷流程进行工作。我每年都和 __ 几 __ 百个,也许上千个团队打交道。我发现 __ 这些 __ 团队(甚至是同一家公司的团队)_都在尝试 __ 以他们自己的方式来定义敏捷。
从某种意义上说,你可以把敏捷列为一门简单的宗教,并信奉它。__:-)
我确信敏捷的基本规则符合当今市场的需要。例如,更短的发布周期满足了持续发布更新的需要。强调交流 __ 胜于 __ 流程 __ 这一点也 __ 满足了 __ 让 __ 跨国团队 __ 在 __ 一起工作的需要。
至于敏捷测试?如果开发 __ 团队 __ 使用了敏捷方法,对于测试团队来说,继续使用瀑布模型或 __V__ 模型是非常困难的。但是,即使是参考我目前最喜欢的测试书籍之一, Crispin 和 __Gregory__ 写的_《敏捷测试》__,我也不确定 __ 自己 __ 是否理解了许多人对敏捷测试所下的定义。这本书中的大部分原则可以应用于包括敏捷在内的所有测试模型。_
即使在工作中采用了敏捷,测试仍然还是测试。发生改变的并不是_“如何”测试,而可能是“何时”以及“由谁”_来做测试。作为测试人员,在敏捷实践中的角色仍然是一样的。但是我们的职责和时间线可能会为了满足所在团队的需求而发生改变。
InfoQ: 哪些(敏捷)实践、技术和工具是测试人员常用的?你知道他们为什么会使用这些东西吗?
Joel: 我不知道敏捷测试人员最常用到的工具是什么。我在 __PractiTest__ 工作_,_我们目睹我们的许多用户成功地使用我们的工具进行工作。我们的工具成为了他们敏捷项目的一部分。但我确信敏捷团队在他们的测试工作中使用了许多其他工具。
我们看到的是_,敏捷团队比“非敏捷”团队拥有更高的自动化率。我们看到了大量不同的自动化工具被采用,从 __Selenium__ 到 __TestComplete,包括各种不同用途的工具。_
我们经常遇见的另一件事是,团队将运行自动化测试作为开发流程的组成部分,而不是当成一个独立的测试操作。我们看到许多自动化测试人员使用同一个开发框架进行工作。比如使用 __Jenkins__ 和 __Bamboo__ 将他们的测试直接集成进构建流程中。
至于技术,我们看到许多探索性测试和脚本测试结合在了一起。这种结合有助于团队处理他们项目中的动态需求,而同时在一定程度上确保遵循一个已定义的、但有更多限制的正规测试套件的标准。
InfoQ: 测试人员认为哪些技术是重要的?他们如何发展这些技能?
Joel: 我认为测试人员在这方面已经达成了共识。一个专业测试人员需要掌握两个最重要的技能是沟通能力和自学能力。
沟通能力不仅帮助我们收集信息,有效地进行计划和执行测试用例,还能帮助我们了解何时以及如何将收集的信息发送给相关 __ 负责人_,以便他们在项目中采取正确的行动。_
自学能力也是必要的。因为我们的挑战、产品和需求在不断地变化。我们没有时间和机会正规地学习工作中需要的技术和流程。
第三个技能是专业能力。我认为这是每个测试人员必须掌握的。专业技能能让测试人员理解项目的技术细节,提出正确的问题,评估风险。测试人员不需要了解项目技术细节的日子已经成为过去。
InfoQ: 测试人员面临什么挑战?他们如何应对这些挑战?
Joel: 我们面临的最大挑战是,项目在不断地快速变化。如果一个测试人员不是多面手,并且不愿意接受变化是日常任务一部分的事实,那么从长远看,我认为他将注定失败。
他们(或者我们)如何才能应对这个挑战?答案相当简单:保持开放的思想,并且将尽可能地学习新东西作为工作的一部分。
也有一些_“普通”__ 的挑战。比如缺少时间、_缺乏 __ 流程或者缺少预算。但是这些都是微不足道的。我认为这些不是新出现的挑战,并且它们不会以一种我们满意的方式消失(无论我们做什么或者在哪工作)。
InfoQ: 你在QA&Test大会上的演讲将探讨测试人员如何能变得更加专业的话题。你能先向InfoQ的读者透露一些相关内容吗,如果可以的话也给一些建议,能让他们在日常工作中提高专业水平?
Joel: 非常乐意!
个人方面,你需要理解作为一个测试人员,你擅长什么,以及你需要提高哪些 __ 方面的 __ 技能。
关于我们工作的技术方面,即使我们不是团队中的技术专家,也要参与项目中技术方面的讨论。
还有一些测试工作相关的,比如以客户为中心的重要性,以及如何与相关人员交流测试结果。
我想如果你们的读者打算获取更多信息,那他们得来一趟毕尔巴鄂。__:-)
InfoQ: 你们只打算进行一次测试行业状况调查,还是计划将这个调查继续做下去?
Joel: 我们计划每年进行一次测试行业状况调查。这样不仅能提供指定年份的测试行业状况信息,而且在 __2_,_3__ 次这样的调查后,我们能分析和找到现实中测试行业的趋势。
查看英文原文: State of Testing Report
感谢邵思华对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。
评论