借助人工智能加速测试

人工智能已经走了很长一段路。也许您最近看过编排跳舞机器人的视频?这些机器人如何敏捷灵活地以如此精确和高效的方式完成这些有趣的动作,真是令人惊讶。与行动不便的简单任务相比,这是一项巨大的成就。

借助人工智能加速测试

人工智能已经走了很长一段路。也许您最近看过编排跳舞机器人的视频些机器人如何敏捷灵活地以如此精确和高效的方式完成这些有趣的动作,真是令人惊讶。与行动不便的简单任务相比,这是一项巨大的成就。

但是,在这个精心安排的例行程序中,在一个高度受控的环境中,他们正在完全按照编程的方式去做。在确定音乐中的哪段诗要演奏什么动作时,他们并没有真正表现出自己的智慧或决策形式。

他们确实具有智能的控制系统,可以提供平衡和定向,但是这与根据音乐中发生的情况独立选择何时进行高踢或跳高不同。

其中一些机器人还包括其他功能,使它们可以执行某些任务,做出特定选择并响应周围的环境。人工智能(AI)增加了自动响应外部输入和实时更改的范围。这使机器人可以评估环境中发生的变化,并产生适当的反应。虽然机器人技术领域是AI使用的主要示例,但还有许多其他应用程序。

将人工智能付诸实践以进行软件测试

人工智能已显示出显着优势的一个关键领域是自动化软件测试。创建的每段代码都需要进行测试,以验证其是否符合要求并提供预期的结果。

执行手动测试以实现这些目标既繁琐又耗时。使应用程序测试自动化可以提高验证和验证代码的能力。

使用人工智能更快地测试发现并修复错误

即使在环境无法预测的情况下,添加AI可以进一步增强流程,使查找和修复错误的速度更快,更容易。随着软件复杂性的增加,自动化还必须扩展以提供更多功能,以在工作流中更早地识别和解决问题。

借助AI提高DevOps生产率

显然,拥有可以根据代码或测试的更改来应用决策的测试软件可以使CI/CD工作流程受益,并提高DevOps团队的工作效率,因此AI可以找到多种工具的方法是有道理的。

AI与机器学习相结合

Parasoft开发副总裁Igor Kirilenko在他的博客“什么是软件测试中的人工智能/strong>”中解释说,这些AI功能“可以查看测试状态的当前状态,最近的代码更改,代码覆盖率以及其他指标,决定要运行的测试,然后再运行它们,而机器学习(ML)可以通过应用允许工具通过收集测试产生的大量数据自动进行改进的算法来增强AI。”那覆盖了很多方面!

这已经演变成将决策功能整合到软件测试工具中,这些决策功能使用观察到的数据,包括实时推理和学习。在AIML的协助下,测试变得更快,更容易向左移动,从而提供了更早的缺陷修复并降低了交付风险。通过收集和合并测试数据,机器学习可以有效地更新和解释某些软件指标,这些指标可以显示被测应用程序的状态。

多年来,Parasoft已将针对AIML的多项创新纳入了多个自动化测试解决方案中,以实现跨测试金字塔各个级别的更智能的测试创建和执行。我们已投入大量精力,使我们的客户更容易进行测试。

人工智能软件测试

从单元测试和静态分析开始

2017年,ParasoftAI测试功能引入了Parasoft Jtest中,以提高Java开发人员和测试人员使用静态分析,单元测试,代码覆盖范围和可追溯性的工作效率。该工具包括JUnit的单元测试助手,可以在更短的时间内实现更高的代码覆盖率。它的一项主要功能是能够建议使用存根和模拟来确保测试的代码隔离,然后自动创建那些模拟和存根以简化测试的创建。

Jtest的另一个支持AI的功能是它能够在没有现有测试覆盖率的情况下检测代码,并确定自动创建新测试以覆盖这些代码段所需的参数,存根和模拟。通过确定应用程序的差距,这有助于增加代码覆盖率。

AI还可以通过基于观察到的行为对发现进行分类并对这些发现进行优先级排序以进行进一步研究,从而提高从静态分析中受益的能力ParasoftAI可以识别代码中的热点,而机器学习通过观察团队与违规行为和代码库的交互来发现对开发人员重要的内容。通过向开发人员发出最相关的警告来警告潜在的高风险安全漏洞或低质量代码区域,从而显着减少了人工工作。

将金字塔上移到APIUI级别

AIML还于2018年添加到我们的无代码API测试解决方案Parasoft SOAtest中,以使测试人员能够轻松且无需脚本地通过UI使用生成有意义,可重用和可维护的API测试。此功能还可以帮助较少的技术团队将其测试策略扩展到UI测试之外,从而提高总体测试覆盖率并减少学习曲线。

最近,在2019年,引入了Parasoft Selenic提高Selenium Web UI测试的质量和维护Selenic中的AI可以在测试运行时识别定位器,等待时间和其他因素的问题,并自动自我修复损坏的测试以完成执行。然后,它为您提供了建议的修复程序列表,您可以通过SelenicIDEEclipseIntelliJ的集成轻松地将它们直接合并到测试代码中。这是用于更新Web UI测试流程的巨大节省时间。

但是,创建和维护测试自动化只是第一步。解锁连续测试的关键是拥有一个可用,稳定且可控的测试环境。服务虚拟化可以模拟测试环境中的各种约束,无论是由于不可用还是不可控制的依赖关系。Parasoft Virtualize利用AI从服务交互中开发数据模型,然后应用ML,并使用这些模型实时监控数据场景,因为它可以在测试环境中监控不同的使用模式。


使用AI进行变革以优化软件测试

由于API的复杂性和对UI的频繁更改,受更改影响的测试套件需要定期进行标识,检查和更新。手动执行此工作非常繁琐,并且容易出错。

为了缓解UI更改,Parasoft Selenic包含了AI启发式技术,可以诊断测试失败并生成有关如何修复测试的建议。借助Parasoft SOAtest的变更顾问,可以快速协调API变更,该变更顾问可以主动扫描API界面,查找服务中的变更,然后确定测试资产如何受到这些变更的影响,并帮助用户轻松地进行更新。

为了节省重新测试已更改代码的时间,上述三款Parasoft产品(JtestSOAtestSelenic)都集成了一种由AI驱动的功能,称为测试影响分析,该功能将套件中的适当测试与代码库相关联以进行智能测试。执行。

更改代码后,Parasoft工具可以识别软件内部版本之间的更改,并将其映射,以指定需要执行哪些测试来验证这些更改。 

现在,您可以在正确的时间执行正确的测试,并更快地完成测试。谁不愿意在更短的时间内进行更全面的测试/p>


利用AIML取胜

随着繁琐且重复的任务继续主导软件测试,有很多机会将人工智能和机器学习应用于软件测试自动化,以帮助用户更快地适应和应对现代软件开发挑战。

作为该领域的突破性创新者,Parasoft通过利用这些先进方法,继续为软件测试工具增加效率和智能。Parasoft工具使用AIML通过以下方式协助和扩大您的应用程序开发和测试团队:

  • 简化有意义的测试的创建和维护。
  • 减少由于不稳定的测试或无法控制的测试环境而导致的构建失败。
  • 查明测试失败以及重要安全和质量问题的根本原因。
  • 简化测试执行以优化变更管理。
  • 还有更多!

想更多地了解将基于AI的自动化测试添加到您的软件开发工作流程中吗您感兴趣的地方联系我们,我们很乐意设置个性化演示。

借助人工智能加速测试

标签:

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月1日
下一篇 2021年1月1日

相关推荐

发表回复

登录后才能评论