【.com快译】众所周知,如果开发出来的软件产品根本达不到最初设计的目的,而且缺陷百出、bug百出,那就是一场灾难对于应用程序开发人员。最可怕的恶梦。同时,对于测试人员来说,无论是应用的性能,还是与稳定性相关的各种问题,他们都有责任照顾到最后一层,确保软件的质量在任何情况下都不会受到损害。拉下。正所谓千里堤崩于蚁穴,任何地方的任何代码缺陷都会影响到你开发的软件最终的整体性能。所以,真正专业、有经验的测试专家是不会放松任何编码测试环节的。如今,各大企业都希望通过DevOps来提升软件产品的交付质量。而这往往需要在软件开发的生命周期中使用各种业界最佳的测试方法和测试用例。在这里,我们将分享一些与DevOps相关的性能测试细节,希望能给软件测试人员带来一些启发。初始测试阶段在此阶段,我们需要在不添加任何负载的情况下对应用程序进行性能测试,以便设置良好的初始基线。这意味着我们通过设置虚拟用户来检查目标应用程序的基本功能来循环执行某些任务。当然,这样的分析不会增加任何并发负载。显然,这样的基线测试是非常重要的,因为它可以有效地处理各种调用或交易的最短响应时间来设置基线。一旦交易被执行,系统会记录并生成其相应的响应时间。从那里,您可以增加负载以观察与应用程序性能相关的各种因素。一般来说,这些因素包括:CPU使用率、内存使用率和处理延迟。作为测试人员,他们需要分别记录最快和最慢的交易时间,然后在此基础上与研发人员仔细沟通和配合,尽量减少负载最大时的交易时间。另外,测试人员还负责维护应用在这两个时间上下限内的稳定性,让软件即使在高负载、多并发的情况下,依然能够保证自身和提供的服务。双重稳定性。寻找临界点在测试初期,测试人员需要充分考虑的另一个关键问题是:通过循环测试各种场景,找到软件的临界点。同样,对这些关键点的分析也很重要。这种方式可以保证正常的交易不会因为突然过多的服务请求而延迟甚至中断。如果你不能保证你的软件产品能够随着用户访问量的激增而顺畅运行,那么你精心部署和发布的应用其实是没有意义的。因此,只有不断地对应用程序进行这种所谓的临界点“极限测试”,才能预测各种峰值负载,或者提前准备好各种应急措施,或者让软件自动执行相应的限流和故障排除程序。至此,我们已经完成了软件预防性功能测试的基础工作。让我们继续深入讨论测试。反复测试脚本当我们“强调”测试一个软件程序时,我们绝不能止步于此。测试人员一般会在不同的场景下反复运行测试脚本,以检查软件在响应不同的请求源时的兼容性。当然,为了提高效率,大部分测试人员也会选择各种自动化测试工具来达到这类测试目的。Selenium是上述自动化测试工具的典型代表。它通过放大和突发各种测试请求来监控目标软件在极端条件下如何协调和执行。因为在真实环境中,我们很难在短时间内汇集大量的用户请求,手动测试应用的健壮性。因此,在测试过程中借用此类工具生成的自动化脚本,添加大量的虚拟用户是非常重要的。它们对系统整体性能的检测和描述具有一定的客观性和参考性。应用的持续性能测试将帮助我们发现CPU和内存占用的变化,开发者也可以借此在代码层面甚至架构层面进行调整,全面提升软件应用的综合服务性能。具体操作方法请参考:https://www.buraptors.com/service/performance-testing/。DevOps环境中广泛使用的测试工具1.Selenium上面提到,Selenium是常用的测试工具之一。可以为测试人员提供良好的流程体验。无论你是想测试移动应用的整体性能和潜在漏洞,还是查看Web应用的并发阈值,Selenium都能为你包办。同时,Selenium也被广泛应用于桌面应用程序的测试环境,帮助提高软件的运行效率。此外,测试人员往往需要知道他们的目标应用程序是否兼容良好,并在不同的浏览器和操作系统上工作,因此他们可以使用Selenium创建各种回归测试,自动记录动作,自动生成不同的语言(如.Net,Java、Perl等)测试脚本,以达到各种测试目的。可以说,如果你想对一个应用程序的整体性能有把握,Selenium一定是你最好的选择。2、UFTUFT(UnifiedFunctionalTesting)也是一个强大的性能测试工具,可以帮助测试人员持续监控系统的各项性能指标。UFT使用VBSScript作为嵌入式语言来支持自动化功能测试和回归测试。无论您是要测试一个Web应用程序、一项服务,甚至是多种运行环境,它都可以根据不同的视图为您提供及时的结果。此外,该工具还可以自动生成各种测试报告和文件。小结综上所述,当我们使用DevOps进行软件产品开发和测试,尤其是那些性能测试时,上面提到的优秀实践和测试工具是我们在自己的项目推进过程中总结的重点,希望得到每一位开发者的正确重视和测试仪。原标题:BestPracticesandToolsinDevOpsPerformanceTesting,作者:ClaireMackerras
