面对软件测试未来的变化

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

【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网站编辑、作家。

SOA开发>更多

  • 故障注入注定要成为软件专业人士的必备技能

    尽管云改善了企业迅速发布高质量、高能力应用的能力,但专家警告说要小心这些应用会变得太复杂,难以进行人工测试。

  • 容器与微服务要“联姻” 你对它们够了解吗?

    在虚拟化和云计算领域,容器大概是发展最快、最广为令人兴奋的技术了,微服务则紧随其后。如果把这两大技术结合起来会碰撞出怎样的火花呢?

  • 事件驱动框架和SOA在空军的应用

    空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。

  • HTML5促进企业移动化服务走向极致

    在企业困扰于传统移动化方式过于复杂时, HTML5凭借其天然的跨平台特性,乘势而起并逐渐得到企业的关注。可是,由于HMTL5标准建立时间不长,展示性能及稳定性更是需要和浏览器有一个良好的兼容,除此之外企业更是缺乏实际应用经验,所以基于HTML5技术的企业级服务市场还处于一片初创状态。

相关推荐

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

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

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

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

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

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

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

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

技术手册>更多

  • 大型机数据迁移和遗留SOA集成向导

    大型机应用现代化对于保持原有系统至关重要,而且大型机在大型企业高性能企业计算仍旧处于核心地位。这也是SOA成功案例中,目前正在进行的革新中最为显著的内容。以前,遗留大型机应用抵制重建,开发团队通过为意大利面式的代码排序,试图改写系统并非易事。遗留系统是一个已经运行了很长时间的,对机构来说是很重要的系统,但是往往不知道如何处理的大的软件系统。它与平台相关,但不能在网络环境中直接访问。另外,遗留系统不能直接访问存储在各种数据库管理系统中的数据,但由于遗留系统所完成的是关键业务,所以不能简单丢弃。在这本向导手册中我们将着重为您介绍遗留SOA集成问题以及大型机的数据迁移问题。

  • 企业云ERP学习

    云之一词的出现带起一片“云海”,也改变了很多事情,改变传统的IT架构模式,冲击了传统的业务运作模式。那么企业内部资源规划,即ERP系统当然不能落于人后。

  • BPM项目错误规避指南

    业务与技术的交叉点正是BPM关注的焦点,这也是大多数重大IT问题出现的地方,通过为业务分析员和软件开发人员提供通用的工具,BPM有希望使应用集成发生革命性变化。正因为这样,技术不能够单独支撑BPM的全部内容,也不能单独解决业务流程的所有问题。业务是BPM依托的另一方面。但是企业在进行BPM项目时却会遭遇种种问题,而有些问题是可以通过前期工作避免的,本期TT SOA技术手册介绍如何合理规避BPM项目中的错误,同时提供BPM技巧和工具信息。

  • 云集成实践基础教程

    随着面向服务和基于云的架构脱颖而出,IT部门越来越重视良好的集成设计。为了避免过快的云应用集成的潜在危险,需要精心策划架构。随着应用集成需要更多的灵活性和普遍的可适用性,优化设计比以往便得更加重要。在即将到来的云计算应用集成中,以集成为中心的云计算,像iPaaS,显示了云应用者数量的快速增长,未来也将面临着更加复杂的集成和实际挑战。在这本技术手册中,我们将重点关注云集成实践。

TechTarget

最新资源
  • 安全
  • 存储
  • CIO
  • 数据库
  • 服务器
  • 云计算