软件测试在机器学习技术的帮助下能变得愈发简单、快速、和可靠。本文讲述 AI 将如何改变测试行业,以及对测试人员意味着什么。
关注人工智能的落地实践,与企业一起探寻 AI 的边界,AICon 全球人工智能技术大会火热售票中,6 折倒计时一周抢票,详情点击:
你是否想象过,有那么一天,软件测试整体发生一次质的飞跃,变得更好,更快、更低成本,从而使得测试人员可以专注在他们更擅长的事情上?由于人工智能在软件测试行业的应用突然受到关注,这个美好的未来可能将会来临。
企业解决方案提供商 Infostretch 宣布,他们将会发布一项全新的名为“Predictive and Preive QA”(可预测与可规范的 QA)的服务,提供软件测试 AI。除了 Infostretch 以外,位于旧金山的创业公司 Appdiff 也提供了基于机器学习的在线“机器人”充当的测试者。另外,dinCloud 最近也发布了虚拟 QA 机器人“James”。
在持续交付、持续集成以及 DevOps 成为软件开发领域的热门话题的今天,测试人员面临着前所未有的压力。“你的员工无法完成那么多的测试工作,即使这些工作都是应该要做的”,Appdiff 的 CEO——Jason Arbon 说,“这是我们做 Appdiff 的一个原因。……光靠人手已经无法完成了。”
解决这个问题的办法是把人工智能引入到软件测试中,更准确地讲应该是人工智能的一个子集:机器学习。“面对如今成千上万的测试数据,一个人想全部看一遍都很难”,Infostretch 的首席客户官 Avery Lyford 说道,“在无数的报告中,你怎么找到问题出在哪个环节,以及真正的问题到底是什么?” Lyford 认为,这就是软件测试 AI 能够介入的范畴,去帮助测试人员识别噪音数据。
Infostretch 正在提供一项“Predictive and Preive QA”的服务。据 Lyford 介绍,这个测试 AI 工具侧重于数据分析,可以确保把正确的信息交到测试人员手中,使他们能够做出更好的决策,从而提高测试过程的效率。这项新服务还能与 Infostretch 的另一个服务 QMetry 结合使用。
AppDiff 的方法就则稍微有点不同。Arbon 介绍说:“我们从终端用户体验出发来反向切入。AI 机器人能完成成千上万的测试用例,而不仅仅是 20 到 100 个回归测试用例。这可以帮助加快 DevOps 的迭代计划。”按他的说法,公司可以通过这个测试 AI 知道用户界面与交互体验是否存在问题。
但仅仅这样还不能称之为机器人。Arbon 曾就职于 Google,并拥有软件测试工作背景,他发现了一个在所有应用中普遍存在的基本事实,而这个事实有助于让机器人变成更好的测试者。“几乎所有的应用都是相似的”,他解释道,“相同的登录界面,相同的搜索框,还有个人中心、购物车等等,很多相似的地方”。Arbon 产生了一个想法,把每个机器人训练成某个单一领域(比如搜索框)的专家,从而让它们能够比一般的测试者做得更好。“这些小机器人分别专注于应用的各个领域,虽然他们并不如人一样聪明,但他们却是最优秀的搜索功能测试者。”Arbon 与他那些来自 Google 和微软的同事们一起训练这些机器人,让它们像他们自己一样去完成测试工作。“感觉就像我们创造了一个机箱中的‘Google 测试者’,它会像我们一样给你的应用做测试。”
而令人惊讶的是,对于那些害怕自己的工作被自动化——或者被 AI 化——从而失业的人们来说,可能还存在一丝希望。Arbon 认为:“那些正在与我们一起工作的人们将来也不会被解雇。他们得以从工作中解放出来并专注在他们擅长的事情上。”而同样地,Paul Merrill(软件测试开发专家、Beaufort Fairmont 自动化测试服务公司的创始人)也曾在于奥兰多举行的 Agile2017 会议上指出,人工智能消灭了那些繁琐的重复劳动工作,测试人员得以转而去做更人性化、更具创造性的事情,而这些正是他们所擅长的。在 Lyford 眼中,这意味着把宝贵的时间还给了测试人员。“我们需要他们能完成复杂的边缘测试,而不仅仅是例行公事。AI 会增加测试者的数量,而不是取代他们。”
两年追踪 170 个 AI 团队的原型设计:初创公司该选择做研究还是做外包?返回搜狐,查看更多