面对软件测试未来的变化

日期: 2015-10-14 作者:Valerie Silverthorne翻译:崔婧雯 来源:TechTarget中国 英文

敏捷团队的软件测试人员不可能赢。情况要么是测试很重要以至于需要开发人员来完成;要么是任何人都可以完成测试。

不幸得是,如今很多软件测试职位都 处于两难的境地。在更快开发并且发布应用的巨大压力之下,企业都会促使测试人员更新他们的技能,从编程到读取电子表格,甚至直接处理客户问题。测试人员—很多测试人员自己也已经感到职位的尴尬之处 必须面对这样的现实挑战,不然可能就会失去工作。

“角色正变得模糊,”敏捷测试教练,专家和作家Lisa Crispin在八月初的Agile2015大会上说。“在Agile世界里,现在的关注点是竞争力,而不是角色。”这引入了一些很严重的问题,不仅仅有关于软件测试的未来,而且有关下一代软件开发团队会如何构成。

开发和测试是否应该合二为一?

要想搞清楚软件测试的未来如何,需要从最棘手的问题入手:开发在哪里结束,测试从哪里开始,这两个应该合二为一么?

这是个高风险问题。“很多测试人员十分担心自己的工作,因为他们不知道如何写代码或写脚本,”Gartner资深研究分析师Nathan Wilson说。他们的确应该感到焦虑,他说,因为自动化软件测试敏捷软件开发的重要环节很容易就能代替这些不会编程的测试人员。“我们已经看到一些公司在转向敏捷之后去掉了软件测试的职位。”

那么答案是将测试人员转变成初级开发人员么?很多测试专家说这也完全错误。

“我们坚信测试人员的技术洞察力,”敏捷教练,培训师和咨询师Janet Gregory说,他在Agile2015大会上和Crispin一起演讲。“但是不,我们不认为测试人员也需要能够写代码,因为你的团队里已经有开发人员了。”

软件测试人员需要加强技能

测试人员给软件开发带来了独特的视角,Matthew Heusser,Excelon Development的资深咨询师。“创建软件和测试人员带来的审视是不同的技术能力,”他说。“测试人员是否需要加强技术能力?是的,肯定需要。但是他们不需要成为全职程序员。”

但是,他们的确需要具备一些今天还不具备的技能,Henrik Andersson,House of Test的联合创始人说,这是一家总部在瑞典的测试咨询公司。他热切得认为测试人员应该还是测试人员,但是他也立即提醒到,很多测试人员工作得很差,使得这一职位蒙羞。他认为,将测试人员变成程序员不是解决问题的答案。

“很多公司认为开发能力和编程序比其他技能更有价值,”他说。“但是我不认为应该关注于开发技能。这是很大的错误。我确实认为大多数测试人员需要提升自己的技能,并且更多得了解开发是如何工作的,代码如何起作用,了解业务功能是如何赚钱的。是的,他们需要更强劲的技术竞争力,但是这只是他们需要改进的好几个领域的其中之一。”

让测试人员了解流程的所有方面

这是需要寻找的有技巧的平衡,Crispin说,因为团队需要培养“测试思维”,同时她会正式让测试人员参与客户服务,来确保每个人的视野更为宽广。

了解流程的其他方面是关键,同时,合作也分外重要。“需要观察每个人是如何完成工作的,”Gregory解释道。“目标是分享理解和通用的语言。团队一起选择一种测试框架,以及域相关的语言,然后让测试自动化知道指定哪些测试。这是巨大的投入,试验所有这一切需要时间,但是绝对是值得付出的。”

自动化成为软件安全测试的常态

软件安全的一大难题,Gary McGraw,Cigital,Inc.的CTO,最近说,“我们可能知道应该怎么做,但是将这一活动扩展到大型企业可能就非常困难。”取得进展的关键,MacGraw说,安全编程领域的顶级专家是“在整个产品线自动化标准方案。”

在2015RSA大会上的采访中,SearchSecurity的编辑主任Robert Richardson和McGraw一起探讨了自动化的前景。“动态黑盒测试和使用脚本进行的有计划测试,以及直接的简单代码审核都可以自动化。”McGraw说。想要实施这次采访所讲内容的人,需要“自动化一切能够自动化的东西。”

渐渐,McGraw说,测试需要覆盖到企业应用程序产品线的所有应用。“通常,首先是去【问】“风险最大的应用是哪个?”并且一个个单独查看。但是如果所有的低风险应用程序加起来有无数漏洞,也会造成灾难。”

配对,但是要更为灵活,Andersson说。“测试人员需要将代码自动化的任务留给开发人员。这是开发人员得到反馈最为迅速的方式,如果我们让测试人员整天做自动测试,这是浪费时间。相反,应该让测试人员和开发人员配对,并且帮助他们(开发人员)学习如何进行测试。一个优秀的测试人员能给团队带来什么?很多很多。”

配对,然后真正的配对,就像mob编程团队一样。在mob编程里,一组有六到八名开发人员,他们集中到一个屋子里,一起狂热地写代码。其实这一理念也可以用在测试上(有人称之为mob测试),或者作为将测试人员和开发人员集中到同一个房间的方式,来一起找到解决问题的方法。

开发人员和测试人员的配对很有效

“将开发和测试人员配对绝对非常有效,大家从一开始就一起在用户故事上合作办公,”Heusser说。“无需交付,无需等待。他们可以在整个故事的开发中mob,并且测试所有路径。”

这也正是Maaret Pyh?j?rvi, 她是芬兰的Altom Consulting公司的软件专家和测试咨询师,在她的团队里所做的尝试。她在过去四年里一直参与mob编程,但是最近才将测试人员加入到流程中。

“我们决定尝试mobbing,而不是解释常见的体验,”她说。团队能够很好得沟通,但是仍然会被“沉默信息”卡住—从键盘快捷键到解决问题的策略—每个人都能够从中受益。Mobbing促使这些信息的公开。“Mob的确促使每个人都成为最好的,而不是那么几个人。很好的想法随之涌现。”

关注于成为最佳测试人员

关注于成为最佳测试人员也很好,这听起来可能很老套,Crispin说。“记住测试人员能够完成哪些别人做不好的事情,这很重要。使用最炫的测试技巧。擅长于侵入测试—这非常重要—并且记住测试是整个团队的责任。”

也要记住最开始为什么进入测试领域,Ernest Mueller建议到,他是一名开发人员,也是Agile Admin的博主。“如果你进入QA领域是因为的确对开发非常感兴趣,那么就继续做吧。但是如果你对测试流程很有热情,那么这就是你应该关注的领域。”如今的形势里,所有的压力都在手动测试人员身上,很可能他们就是会被舍弃的第一层。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

作者

Valerie Silverthorne
Valerie Silverthorne

Valerie Rice Silverthorne是SearchSoftwareQuality网站编辑、作家。

相关推荐

  • 2016年管理好软件测试事业

    从尝试定义测试开始听上去不错,至少可以作为起点。但是,测试通常听上去更像笔头工作,是一个低价值的角色,很可能被外包。本文将分享一些掌控软件测试事业的方式。

  • 敏捷团队要如何管理持续需求?

    你知道对于敏捷团队来说,为什么持续需求很常见,而且对于持续开发的灵活性很必要吗?

  • 持续交付面临哪些技术障碍?

    随着持续集成的实现,敏捷团队将面临越来越多有技术障碍。持续交付要求开发一条新途径或,通过这种方法,新代码准备可以随时部署生产。

  • 如何实施整体团队敏捷方法

    达到整体团队敏捷方法很难。这里讲述了一个教练如何采取不同寻常的方法来使她的团队成员相关讨论、寻求帮助,以及把所有问题看作是团队级别问题来处理。