Research Article

PreventativeTestPro:一个可扩展的混合测试框架,利用可观察性和生成式人工智能实现主动软件质量工程

DOI:

10.3791/69316

March 24th, 2026

In This Article

Summary

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

PreventativeTestPro 是一个由人工智能驱动的测试框架,利用可观测性数据和大型语言模型实现根因分析、测试生成和持续验证,旨在提升软件可靠性并优化前后端系统的质量保证,从而实现更高效的支持工单管理。

Abstract

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本文介绍了一套复杂且可扩展的测试系统,将可观测性驱动的自动化与AI增强的主动质量工程相结合,以应对当代软件交付的难题。建议系统通过引入创新的基于可观察性的测试编排层,增强了PreventativeTestPro——一个开源混合测试平台,结合了黑箱和白箱方法。该平台利用日志、指标、事件和追踪数据,配合浏览器和服务器端监控,迅速发现异常,优化测试用例选择,并自动化创建功能性、性能和安全测试套件。其显著特点是引入大型语言模型(LLMs),提供根因洞察,并基于生产行为和识别异常自主构建新测试用例,从而实现自适应回归覆盖和智能修复。

该系统通过即时的AI驱动日志分析,促进测试并发执行,促进操作与测试之间的持续反馈循环。它已在多个企业场景中得到验证,包括基于微服务的SaaS平台和SAP BTP生态系统。四次生产部署和49名工程师的测试组的实证结果显示,平均解决时间下降了最多30%,SLA合规率超过95%,测试覆盖率和缺陷可追溯性均有显著提升。与行业标准工具的无缝连接展示了其即插即用的能力。

本研究提出了一种全面、独立于工具且前瞻性的质量工程方法论,符合敏捷和DevOps原则。未来的工作包括通过机器学习进行动态异常分类、向移动和用户体验导向系统的扩展,以及增强大型语言模型能力,用于领域特定测试开发和失败预测。

Introduction

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

敏捷范式在软件业务中的日益流行,推动了对持续集成环境日益增长的兴趣。此类系统的优势在于能够无缝整合常规程序修改,从而实现加速且经济高效的软件演进。因此,它将高效管理诸如构建流程、测试执行和测试结果报告等任务。软件测试自软件工程诞生以来就已被实施。实施软件测试的实践是为了评估软件质量1.测试涵盖了一系列旨在检测和解决软件在部署给终端用户之前潜在错误的行动。软件测试是开发过程中一个成本高昂的阶段。软件测试和调试成本占总开发成本的50%以上。回归测试的费用取决于应用的复杂程度和测试套件5的规模。

敏捷方法论导致生产环境中快速实施变更,进而导致大量因反馈而出现支持问题。管理支持问题是一项非常重要且关键的责任,正如68%的消费者表示愿意为一家以优质客户服务闻名的企业的产品和服务支付溢价所证明的6.根据一项研究,86%的客户在获得卓越客户服务后,更有可能在长期内成为该业务的忠实支持者。根据一项研究,89%的买家如果拥有良好的客户服务体验,更倾向于重复购买。根据一项研究,93%的客户倾向于与提供卓越客户服务的公司进行重复购买。要提供优质客户服务,必须迅速且有效地以高质量解决支持请求。质量因素对于追求更快交付至关重要,因为解决支持问题的成本随着时间推移和升级等级10而上升。

为了获得高质量,必须在确保工单上回归测试覆盖的同时,发现并解决支持问题。这项任务复杂,导致运营困难增加,尤其是及时发现和解决支持问题。支持困难,包括系统性能下降或不可预见的故障,常出现在软件系统的运行阶段。如果这些问题未能及时发现并解决,可能导致长时间的停滞、消费者不满和财务挫折。当前利用可观测性信息满足测试需求的方法常常受限于手动流程、响应式而非主动策略,以及在异常检测与测试执行整合方面的不足。在利用实时可观察性数据主动检测支持问题以及自动执行适当测试用例以防止可能的故障方面明显缺乏。

缺乏全面统一的解决方案会对软件维护和可靠性产生许多不利影响。这些因素包括由于问题识别延迟导致的系统长时间不活跃、寻找相关测试用例的人工劳动增加,以及对系统可靠性的信任度下降。此外,未能准确将已识别异常与测试案例关联,导致测试覆盖率不足,可能导致重要问题未解决。

这种差异的根本原因可能归因于现有监测和测试系统的结构分散。许多现有系统缺乏将可观测性数据分析与相关测试用例执行无缝整合的能力。此外,依赖固定法规和人工程序将异常与测试案例联系起来,阻碍了及时且准确地解决新问题的能力。

为了深入了解行业如何处理支持问题和进行预防性测试,我们通过采访该领域的专业人士进行了描述性研究。根据访谈数据,强调在任何方案实施过程中遇到的最大障碍是保证质量的时间不足。访谈中提到了若干担忧,包括个人技能提升、维护成本、投资回报率低以及工具选择与集成问题这一信息也已在Katalon的《质量现状报告2024》中得到验证。在为访谈中提到的问题提供任何解决方案之前,我们进行了工具的比较评估,以了解是否有现有工具或算法能够解决上述问题(13,14)。我们现在缺乏专门设计来解决访谈中讨论的困难所需的工具或算法。

这项工作引入了一种创新方法,利用可观测性数据在早期(甚至在问题被报告之前)检测支持问题并进行适当的测试用例,从而提升软件系统的可靠性和稳健性。该策略基于利用可观测性数据识别异常,建立与可能问题的联系,并启动有针对性的测试用例,这些测试用例极有可能揭示问题的根本原因。该建议方案旨在缩小软件运营与测试之间的鸿沟,实现对支持问题的主动快速响应。该方案允许在套件中缺少测试用例时创建新测试用例,从而提升测试覆盖率。建议的策略还旨在回应访谈及Katalon11121314报告中提出的关切。

在控制理论的语境中,可观测性指的是从外部输出推导出系统内部状态的程度。在软件工程领域,可观察性指的是通过利用日志、指标、痕迹和事件等输出来监控和理解软件系统状态的能力(151617)。我们的文献分析包括对可观测性及其在软件测试中的应用。然而,我们找到的相关文献有限。因此,我们还包括了关于创新预防检测和相关研究的讨论。我们的文献综述进一步分为三个不同组别。

Bogatinovski等人18介绍了CLog,这是一种上下文感知神经网络和聚类技术,旨在通过识别重要子进程并在突发上下文转换中检测故障,解决不稳定的日志数据和不足的故障覆盖问题。Busby等人提出了一种基于日志的方法,用于生成匿名测试用例,预测用户序列进行复制且不包含个人数据;然而,并发和日志器级别的差异依然是重要的限制。Lee 和 Kang20 建议在存在变异机制的情况下,为软件产品线测试实施测试架构,以提升可观察性和可控性。QEX模型21结合了来自不同测试来源的数据,在测试过程中提供清晰且有用的信息。Lal和Kumar22强调能够看到并控制智能测试的重要性。他们建议利用人工智能驱动的自动化,使测试更快、更高效、更全面。Briand等人23展示了面向切面编程在Java中有效工具化合同和不变量的应用,而Baral和Offutt24则强调错误的测试断言导致“盲测”的问题,这些测试未能识别错误行为。

Rott25 讨论了 Teamscale 中的现代分析和可视化强调软件测试过程,允许测试人员访问针对特定问题和情况的处理成果。Collins 和 Lucena26 强调在部署到生产环境前,在 CI 流水线中运行大量测试的重要性。他们说分层测试是确保产品质量高、减少支持问题的好方法。

BugSwarm27 提供了一种通过将根因与其解相关联来检查 CI 测试失败的方法。Dudila和Letia28探讨了白箱和黑盒测试方法,提出了一种协调的策略,以减轻开发过程中的调试工作。Fushihara 等人29 研究了 Python 应用中的“测试气味”,分析其通过代码修改的进展,以增强测试代码管理。SUPERNOVA30 是一个利用数据、自动化和机器学习提升质量保证的测试选择和故障预防系统。Araujo31提出了一种以软件老化为重点的维护策略。该策略在代码可能变更时采用纠正性维护,在可能导致系统停机时采取预防性策略,从而降低服务失败次数。Andrew 等人研究了平行突变测试,即反复突变、测试和重载类别,直到所有变异都被评估为止。Dunn 等人提出了安全漏洞指标,用于为组件分配权重,以强调彻底测试的重要性。最后,Huo等人使用序列集合索引来查找缺陷位置并确认问题。这表明根本原因往往与软件应用中大多数失败的测试用例有关。

Access restricted. Please log in or start a trial to view this content.

Protocol

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

系统架构与原型总结:

本研究提出了一个改进且可适应的原型系统PreventativeTestPro,体现了利用可观察性数据和大型语言模型(LLM)进行主动质量工程方法,进一步提升支持问题的解决。该系统通过自动化异常检测、根因分析,以及利用合成监控、可观测性数据和生成式人工智能集成智能执行和开发未解决覆盖范围的测试用例,来解决现代软件交付问题。该架构为模块化,包含三个核心组件:可观测性数据采集与分析器、生成式AI驱动智能层,以及测试编排与执行引擎,详见 图1

figure-protocol-1
图1:所提系统的输入输出。 可观测性数据、观察者输出、测试库和映射规则作为输入,同时提供BHRAMARI测试平台,后者构建AI驱动的测试平台以增强测试用例的稳健性。该系统生成异常检测、AI生成建议、相关测试用例执行、文档和报告,以及缺失测试用例的识别和创建。 请点击此处查看该图的放大版本。

图2 展示了建议方法的架构。图示了系统的输入、处理和输出。它还提供了系统的全面描绘,随后将其翻译成解释,以增强对其基础特征的理解。

figure-protocol-2
图2:拟议系统的系统架构,包含可观测性数据采集和分析器、生成式AI驱动的智能层,以及测试编排和执行引擎。 图示展示了PreventativeTestPro系统的内部架构,分为三层:可观测性收集层汇总来自多个来源的数据,包括浏览器事件、日志、HAR文件、后端日志、指标和追踪。生成式人工智能智能层利用这些数据进行根本原因分析、异常优先级排序,并通过大型语言模型自主创建测试用例(UI、API、手册)和文档。BHARAMARI模块还建立了新的试验平台。测试编排与执行引擎将差异映射到测试用例,并发执行测试,评估结果,并为工程团队、工单系统和仪表盘提供实时监督和解决方案监控。 请点击此处查看该图的放大版本。

可观测性数据采集与分析模块作为平台的感官系统,持续大规模、多方面收集正在评估应用的数据。在前端监控中,会部署合成监控代理来监控浏览器端事件,如文档对象模型(DOM)结构、用户操作(如点击、停留和输入),以及捕捉网络和API请求与响应信息的HAR文件。PreventativeTestPro 还内置于 OBSERVER,以增强浏览器的功能。后端监控针对日志分析,即请求和处理服务器端可观察性信息,包括应用日志、错误、信息和调试消息、栈跟踪和异常日志、响应时间等性能指标,以及使用OpenTelemetry或New Relic等技术进行追踪。该系统将与模拟用户流量和交互的合成代理协作,日志收集器则压缩实时输入数据。收集到的数据随后被归一化为结构化格式,并交给其他处理单元进行进一步分析。

PreventativeTestPro 的核心是基于生成式人工智能的智能层,利用大型语言模型(LLMs)如 GPT 来读取和分析可观测性数据,并进行上下文化和生成响应。该模块进行根本原因分析:解释根因日志和痕迹,以解释技术故障,以易于理解的方式解释,例如某一行代码的NullPointerException和问题的假定原因,如未初始化的变量。在测试用例生成中,系统使用自动测试,这些测试通过将异常模式或事件序列转换为可执行的测试脚本生成,例如Selenium或API测试,同时还生成可由质量保证人员执行的人类可读测试程序。API测试通过将HAR和跟踪日志转化为一系列API请求,并满足预期断言,所有生成的测试用例通过与BHRAMARI集成,通过有效的测试平台进一步增强。根据分析的系统行为,建议系统中进一步改进、测试覆盖增强以及CI/CD集成机会。AI引擎通过提示工程和上下文丰富,利用结构化可观察性数据,通过提示模板呈现日志上下文,将结构化查询传递给LLM,最终生成功能性输出,如代码片段、测试用例规范和自然语言文档。

测试编排与执行引擎模块负责测试优先级、调度和执行,支持基于代码变更覆盖细节、标签和异常映射的自动验证。测试的映射和选择涉及利用映射规则引擎将地图或仪器模式中的异常与已知测试用例关联起来,然后根据既定映射运行测试用例。并发测试执行的特性允许在不同环境中同时运行多种测试,如功能测试、性能测试或安全测试,并协调Selenium、JMeter和ZAP作为自动化流程中的工具使用。反馈环路的实现确保执行结果被记录,测试失败时,会将变更通知包括Jira和Azure DevOps在内的支持系统,以便跟踪和解决。

假设:

H1(运营效率):假设可观测性数据与人工智能驱动智能的融合将提升运营指标,特别是通过减少平均解决时间(H1a)、平均分析时间(H1b)、平均检测问题时间(H1c)和平均部署修复时间(H1d)来提升运营指标。这些变更应有助于通过加快检测、分析和部署,同时将系统停机时间降至最低,更容易满足服务水平协议(SLA)要求(H1e)。

H2(测试效果):人们还认为,随着更多测试覆盖率(H2a)、并行运行测试用例(H2b)和智能测试优先级(H2c),软件测试的效果将会提升。AI生成的建议(H2D)也预计将有助于测试和运营工作流程。这将有助于更快发现漏洞,加快反馈循环,并支持预防性且持久的质量保证实践。

范围与受众:

该原型展示了整体系统设计、主要理念,以及如何一步步搭建和运行PreventativeTestPro框架。书中还详细讲解了如何设置合适的测试平台和样本输入,并提供了解决问题的建议。内容面向已经掌握Java基础知识、希望学习如何利用预防性测试提升软件可靠性和效率的软件质量工程师。

环境设置:

补充文件1 包含与PreventativeTestPro沟通所需的逐步说明和程序。这包括安装必要环境的说明、如何启动和停止工具服务,以及对工具基本用途的清晰说明。如需获得更详细的文档,以及如何使用高级工具、设置说明和其他组织细节,请参阅该项目的官方 GitHub 资源:https://github.com/sohambpatel/PreventativeTests/wiki 所在地的具体维基页面和 https://github.com/sohambpatel/PreventativeTests?tab=readme-ov-file/readme 的主 README。

示例输入:

示例输入文件可在GitHub仓库中找到:https://github.com/sohambpatel/PreventativeTests/tree/main/preventativetestframework/Inputs。该框架可以立即运行这些文件预设的测试用例和数据集。它们作为参考输入,用于检查环境设置,并获得该协议中描述的相同结果。

样本输出:

GitHub仓库(https://github.com/sohambpatel/PreventativeTests/tree/main/preventativetestframework/SampleOutputs)包含了预防测试框架输出数据的原始格式示例。通过这些文件,用户可以直接查看生成的报告和指标的布局和细节,展示工具在运行过程中取得的成果。本指南有助于了解数据流水线,并确认在重建实验过程时预期的框架行为。

执行原型:

本节提供了详细的逐步指南,教你如何使用PreventativeTestPro框架。为了帮助用户复现工作流程,每个阶段按顺序描述。本节以结构化格式呈现执行步骤,以便更易复现结果,指出重要检查点,并确保 PreventativeTestPro 框架能在不同实验或操作环境中一致使用。

在此步骤中,可以使用PreventativeTestPro图形用户界面选择最佳的预防性测试工作流程。 图3 展示了五个选项,每个代表测试过程的不同步骤:并行运行测试、通过优先处理现有测试用例从监控输出创建测试套件、创建手动测试用例、创建自动化测试用例,以及寻找根本原因。当用户做出选择时,指定的工作流程开始。之后,可以在后续阶段添加额外模式(如AI驱动的测试用例生成或根本原因分析)。这种组织良好的界面为预防性测试研究提供了一种方式,这些研究可以重复进行,并可拆分成更小的部分。

figure-protocol-3
图3:系统用户界面1。 图中展示了 PreventativeTestPro 用户界面,允许从五种不同的预防性测试方式中选择:1. 预防性测试,并行执行:开始测试,2. 预防性测试,基于合成应用监控的最终测试套件,3. 预防性测试,利用生成式人工智能生成手动测试用例,4. 预防性测试,利用生成式人工智能生成自动化测试用例,5. 预防性测试, 利用生成式人工智能进行根本原因分析。一次只能选择一个选项。模块化设计使预防性测试更为便捷,并增加了基于人工智能的测试创建和诊断功能。 请点击此处查看该图的放大版本。

图4 展示了该框架的并行执行接口。在此步骤中,用户输入他们想测试的应用程序的URL,以及包含配置设置的属性文件的绝对路径。输入设置完成后,用户可以通过点击“开始测试”按钮同时开始运行测试,该按钮还会监控被测网站,并生成安全性、性能、控制台和JavaScript日志。可以通过点击“停止测试”按钮来停止正在进行的执行。获取推荐按钮可以让你从记录的日志中获得AI驱动的洞察。这种设计确保多个测试类别(功能类、性能类和安全类)同时运行,从而更容易更快地发现问题。

figure-protocol-4
图4:系统用户界面2。 图示展示了PreventativeTestPro框架的并行执行模式。用户指定目标应用 URL 以及包含配置细节的属性文件路径。选项包括启动测试(并行运行功能、安全和性能测试并记录日志)、停止测试(停止执行)和获取推荐(从日志和指标中获得AI驱动的洞察)。 请点击此处查看该图的放大版本。

图5 展示了PreventativeTestPro框架中基于监测的测试最终化接口。在此步骤中,用户设置监控输出文件的路径、用于获取错误或异常节点的 JSON 路径查询,以及保存已创建案例的测试仓库路径。输入设置完成后,用户可以先获取与之对应的类和方法的名称,然后根据所找到的类和方法对测试拉取的测试用例进行排序。这一优先级排序步骤展示了如何利用监控数据有效对测试用例进行排序。

figure-protocol-5
图5:系统用户界面3。 图示展示了如何在PreventativeTestPro框架中利用合成监测输出对测试套件进行优先级排序。用户输入监控输出文件的路径,输入JSON路径以获取异常/错误,以及测试仓库(离线)的路径。获取类/方法名称和获取测试用例选项可以用来将映射异常转化为可运行的测试用例。这确保了运行时问题被包含在测试过程中。 请点击此处查看该图的放大版本。

图6 展示了PreventativeTestPro的手动测试用例生成接口。在此步骤中,用户通过提供栈跟踪文件的绝对路径和配置属性文件的路径,告诉程序在哪里找到显示异常的栈跟踪文件。输入设置好后,可以运行生成测试用例选项,将异常转换为结构化手动测试用例。这确保了之前发生过的运行时错误始终被纳入测试过程。该框架通过自动化流程使创建测试用例变得更为简单。这减少了人工操作,提升了测试覆盖率,使测试更可靠,并防止了同样的问题再次发生。这一步是发现问题与确保问题发生前质量良好之间的重要环节。

figure-protocol-6
图6:系统用户界面3。 图示展示了PreventativeTestPro的测试用例生成接口。它将异常堆栈痕迹转化为行为驱动开发(BDD)中的手动测试用例,供用户使用。用户提供栈跟踪文件和属性文件的路径,然后点击“生成测试案例”,自动生成与发现失败匹配的案例。这确保运行时问题始终转化为可重复的回归测试。 请点击此处查看该图的放大版本。

图7 展示了PreventativeTestPro的自动化测试用例生成界面。在此步骤中,用户给出可观测性 JSON 输出文件的绝对路径和属性配置文件的路径。当点击生成自动测试案例按钮时,系统会处理监控数据,生成可运行的测试用例,以显示与发现的问题相同。

figure-protocol-7
图7:系统用户界面4。 图中展示了PreventativeTestPro的自动化测试用例生成接口,该接口可利用可观测性数据进行测试。用户会提供属性文件的路径和可观测性 JSON 输出文件。然后,他们点击“生成自动化测试用例”,制作可运行的脚本(以Selenium和TestNG格式)。 请点击此处查看该图的放大版本。

figure-protocol-8
图8:系统用户界面5。 图示了PreventativeTestPro用于根因分析(RCA)的异常仪器接口。用户输入属性文件和栈追踪文件的路径,然后选择RCA开始AI驱动的分析。这一步将检测到的异常转化为结构化的诊断洞察,确保故障能够以可重复且针对具体问题的方式修复。 请点击此处查看该图的放大版本。

故障排除:

表1 显示了最重要的仅限于应用代码的故障排除点。这些点是快速记住如何修复运行PreventativeTestPro框架时出现的代码层面问题的方法。项目文档为需要更多帮助排查影响应用整体功能的读者提供了更多信息和逐步指导。完整资源可通过链接获取:https://github.com/sohambpatel/PreventativeTests/wiki/How-to-use%3F。这一额外的参考确保用户不仅能解决编码问题,还能学会排查功能,从而更有效地使用框架。

错误行为根本原因怎么解决?
申请还没开始Java 路径未被设置在环境变量中,设置JAVA_HOME
服务器启动时故障正在使用的端口8080/9090(特别是在使用Docker时)更新 Docker 端口映射
生成式AI内容是空的代币可能已过期生成令牌并更新config.properties,再作为输入
框架生成的浏览器实例没有连接到网络要么是ZAP服务器没有运行,要么是ZAP凭证错误在运行应用程序之前先开启ZAP系统,如果运行中问题依然存在,可以在config.properties里更新ZAP凭证,再输入它

表1:常见的系统错误及快速解决方法。 下表展示了常见的应用程序特定错误、故障排除方法以及可用于解决问题的快速修复方法。

Access restricted. Please log in or start a trial to view this content.

Results

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

最初,我们实时分享了与各行业合作进行的案例研究成果。此外,我们还提供了使用该框架和算法的测试者得出的结果,以及对结果有效性潜在风险的最终观察。

行业案例研究结果:

基于我们的研究,重点关注实际应用并解决支持问题,我们与四家软件公司合作共享框架并获得实时结果。行业参与和结果展示了其实际应用的实用性和优势。

案例研究1:

GazonTech 是一家专注于网络、流媒体平台、在线游戏、视频会议和智能家居自动化的软件公司。我们开发的解决方案是专门为他们的流媒体平台实现的。它已被部署到特定模块,我们能够捕捉并分析该模块的发现。每家公司都有自己的一套流程来管理支持问题和提供解决方案。公司还提供多种交付模式,用于将变更发送到生产环境。这些包括每日剂量,即在每日生产窗口内快速补丁支持问题。每周剂量用于...

Access restricted. Please log in or start a trial to view this content.

Discussion

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本研究介绍了PreventativeTestPro,一个综合性的测试与可观测性平台,集成了合成监控、可观测性数据和生成式AI自动化,以提升软件质量保障。该系统由三个基本模块组成:可观测性数据收集和分析器、生成式AI驱动智能层,以及测试编排和执行引擎。这些组件共同建立了反馈循环,实时系统行为引导测试用例生成、故障检测和持续测试验证。该方法通过将智能、上下文敏感的测试生成直接融入软件开发过程中,整合了经典的黑盒和白盒测试技术。

本研究的科学贡献在于创新地应用大型语言模型(LLMs)分析复杂的可观测性数据,以获得可操作的洞察,包括根因分析(RCA)、测试用例生成以及系统行为建议。PreventativeTestPro 通过将日志、追踪、HAR 文件和 DOM 事件视为 AI 流水线的结构化输入,自动化将原始遥测数据转换为诊断和纠正输出。这拓展了人工智能增强软件工程的前沿,并为基于实时系统指标的持续验证和测试驱动开发创造了新机遇。表6 35,36,37,38,39,40,41展示了Prev...

Access restricted. Please log in or start a trial to view this content.

Disclosures

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

作者声明他们没有已知的竞争性财务利益或个人关系,这些关系可能影响本文报道的工作。我们证明,Gemini 只是用于语法润色和重新措辞,使句子更易阅读。为了正确且伦理正确,作者仔细修订了人工智能提出的所有修改,以保留最初的科学含义。

Acknowledgements

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

作者感谢以下机构在整个研究过程中给予的重要支持与合作。与这些公司的合作实验案例研究对于验证所提工具和方法至关重要。感谢GazonTech、Lopa Engineering、Afour Technologies、QJ Technologies和SecureLayer7在实验阶段提供了实用环境、技术见解和宝贵意见。他们的积极参与极大提升了研究成果的实际意义和可用性。作者对他们愿意参与学术研究,以及对软件工程和网络安全领域创新和持续提升的奉献表示深切感激。

Access restricted. Please log in or start a trial to view this content.

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
阿帕奇女王Apache 软件基金会3.9.6Java 项目的依赖与项目管理工具
ChatGPT(GPT-3.5 Turbo API)OpenAIhttps://platform.openai.com/api-keys用于从日志生成基于AI的测试推荐,生成手动测试用例,生成自动化测试用例并获得根本原因分析
计算机(开发/测试机)标准台式机/笔记本-用于开发、执行和测试 PreventativeTestPro
磁盘空间--建议至少有10GB的空闲磁盘空间用于日志、报告和测试伪影
DockerDocker 公司27(https://docs.docker.com/desktop/setup/install/windows-install/) 用于容器化以确保跨环境的可重复性
GitGit SCMgit 版本 2.45.2.windows.1用于开发和协作的版本控制系统
GitHub仓库GitHubhttps://github.com/sohambpatel/PreventativeTests包含源代码、文档、数据集和示例的公共仓库
谷歌浏览器谷歌140.0.7339.128用于合成监测和测试的主要浏览器
爪哇Oracle / OpenJDK21.0.2用于 PreventativeTestPro 的软件开发和执行
操作系统平台无关-该工具可在任何安装了Java和Maven的操作系统上运行(Windows、Linux、macOS)。
黄蜂噼啪OWASP基金会2.14.0安全扫描与漏洞检测工具
处理器--建议使用Intel i5或更高(或同等型号)进行并行执行和AI处理
内存--建议至少8GB内存用于运行测试和基于浏览器的监控

References

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,
  1. A novel approach to multiple criteria based test case prioritization. Abid, R., Nadeem, A. 2017 13th International Conference on Emerging Technologies (ICET), Islamabad, Pakistan, , (2017).
  2. Khatibsyarbini, M., Isa, M. A., Jawawi, D. N., Tumeng, R. Test case prioritization approaches in regression testing: A systematic literature review. Inf Softw Technol. 93, 74-93 (2017).
  3. Enhanced weighted method for test case prioritization in regression testing using unique priority value. Ammar, A., Baharom, S., Ghani, A. A. A., Din, J. 2016 International Conference on Information Science and Security (ICISS), Pattaya, Thailand, , (1109).
  4. Using artificial bee colony for code coverage based test suite prioritization. Konsaard, P., Ramingwong, L. 2015 2nd International Conference on Information Science and Security (ICISS), Seoul, Korea, 10, Forthcoming.
  5. Rosero, R. H., Gómez, O. S., Rodríguez, G. Regression testing of database applications under an incremental software development setting. IEEE Access. 5, 18419-18428 (2017).
  6. Customer Service Expectations 2018. , Gladly. Available at: https://www.gladly.com/blog/2018-customer-service-expectations-survey/ (2018).
  7. Must-Know Customer Service Statistics. , Khoros. Available at: https://khoros.com/blog/must-know-customer-service-statistics (2025).
  8. State of the Connected Customer, 4th Ed. , Salesforce. Available at: https://c1.sfdcstatic.com/content/dam/web/en_us/www/documents/research/salesforce-state-of-the-connected-customer-4th-ed.pdf (2025).
  9. Customer Acquisition Study. , HubSpot. Available at: https://blog.hubspot.com/service/customer-acquisition-study (2025).
  10. IT Ticket Handling Best Practices. , Ivanti. Available at: https://www.ivanti.com/blog/it-ticket-handling-best-practices (2025).
  11. Patel, S., Patil, K., Chumchu, P. Quantitative data set on test prioritization and preventative tests. Mendeley Data. V2, (2023).
  12. State of Software Quality Report 2024. , Katalon. Available at: https://katalon.info/hubfs/download-content/ebook/State%20of%20Software%20Quality%20Report%202024.pdf (2025).
  13. Patel, S., Patil, K., Chumchu, P. OBSERVER: Observing Browser Synthetic Environments for Robotization, Verification, Efficiency, and Resilience. Softw Impacts. 24, 100752(2025).
  14. Patel, S., Patil, K., Chumchu, P. Comparative analysis of software solutions for preventative testing and test prioritization. Mendeley Data. V2, (2024).
  15. Intro to Synthetic Monitoring . , New Relic. Available at: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/using-monitors/intro-synthetic-monitoring (2025).
  16. Observability Glossary. , SolarWinds. Available at: https://www.solarwinds.com/resources/it-glossary/observability (2025).
  17. Patel, S., Patil, K., Chumchu, P. BHRAMARI: Bug driven highly reusable automated model for automated test bed generation and integration. Softw Impacts. 21, 100687(2024).
  18. Failure identification from unstable log data using deep learning. Bogatinovski, J., Nedelkoski, S., Wu, L., Cardoso, J., Kao, O. 2022 22nd IEEE International Symposium on Cluster, Cloud and Internet Computing (CCGrid), Taormina, Italy, , (2022).
  19. Creating test cases for testing software using anonymized log data. U.S. Patent. , US11709764B2. USPTO (2023).
  20. Towards test architecture based software product line testing. Lee, J., Kang, S. 2014 IEEE 38th Annual Computer Software and Applications Conference (COMPSAC), Vasteras, Sweden, , (2014).
  21. QEX: Automated testing observability and QA developer experience framework. Locke, H. L., Ting Keshia, Y. K., Yu, J. C. K., Chua, H. Y. 2023 IEEE Conference on Software Testing, Verification and Validation (ICST), Dublin, Ireland, , (1109).
  22. Intelligent testing in software industry. Lal, A., Kumar, G. 2021 12th International Conference on Computing Communication and Networking Technologies (ICCCNT), Kharagpur, India, , (2021).
  23. Instrumenting contracts with aspect-oriented programming to increase observability and support debugging. Briand, L. C., Dzidek, W. J., Labiche, Y. 2005 21st IEEE International Conference on Software Maintenance (ICSM), Budapest, Hungary, , (1109).
  24. An empirical analysis of blind tests. Baral, K., Offutt, J. 2020 IEEE 13th International Conference on Software Testing, Validation and Verification (ICST), Porto, Portugal, , (1109).
  25. Rott, J. Test intelligence: How modern analyses and visualizations in Teamscale support software testing. 2022 1st International Workshop on Visualization in Testing of Hardware, Software, and Manufacturing (TestVis), Oklahoma City, OK, USA, , (2022).
  26. Collins, E. F., de Lucena, V. F. Software test automation practices in agile development environment: An industry experience report. 2012 7th International Workshop on Automation of Software Test (AST), Zurich, Switzerland, , (2012).
  27. BugSwarm: Mining and continuously growing a dataset of reproducible failures and fixes. Tomassi, D. A., Dmeiri, N., Wang, Y., Bhowmick, A., Liu, Y. C., Devan, P. T. 2019 IEEE/ACM International Conference on Software Engineering (ICSE), Montreal, Canada, , (2019).
  28. Towards combining functional requirements tests and unit tests as a preventive practice against software defects. Dudila, R., Letia, I. A. 2013 International Conference on Control Systems and Computer Science (ICCP), Sinaia, Romania, , (2013).
  29. Fushihara, Y., Aman, H., Amasaki, S., Yokogawa, T., Kawahara, M. A trend analysis of test smells in Python test code over commit history. 2023 49th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), Durres, Albania, , (2023).
  30. SUPERNOVA: Automating test selection and defect prevention in AAA video games using risk-based testing and machine learning. Senchenko, A., Patterson, N., Samuel, H., Ispir, D. 2022 IEEE Conference on Software Testing, Verification and Validation (ICST), Valencia, Spain, , (2022).
  31. A software maintenance methodology: An approach applied to software aging. Araujo, J., Melo, C., Oliveira, F., Pereira, P., Matos, R. 2021 IEEE International Systems Conference (SysCon), Vancouver, BC, Canada, , Forthcoming.
  32. Mutual Automobile Insurance Company. Mutation Testing in Parallel Threads. U.S. Patent. , US11163675B1. USPTO (2021).
  33. Machine learning-based decision-making for autonomous systems communication. U.S. Patent. , US11366748B1. USPTO (2022).
  34. Use sequential set index for root cause location and problem detection. U.S. Patent. Huo, Z. P., et al. , US11645142B1. USPTO (2023).
  35. Selenium WebDriver. , Selenium. https://www.selenium.dev (2025).
  36. The Katalon Platform. , Katalon. Available from: https://katalon.com (2025).
  37. Apache JMeter. , Apache Software Foundation. Available from: https://jmeter.apache.org (2024).
  38. OWASP ZAP (Zed Attack Proxy). , OWASP Foundation. Available from: https://www.zaproxy.org/ (2025).
  39. Xray by Xpand IT. Xray - Test Management for Jira. , Xray. Available from: https://www.getxray.app (2025).
  40. Tricentis Copilot. , Tricentis. Available from: https://www.tricentis.com/products/copilot/ (2025).
  41. SmartQ Tech Products. , SmartQ Technologies. Available from: https://www.thesmartq.com/smartq-tech-products/ (2025).

Access restricted. Please log in or start a trial to view this content.

Reprints and Permissions

Request permission to reuse the text or figures of this JoVE article

Request Permission

Tags

Hybrid TestingObservability AutomationGenerative AI TestingSoftware Quality EngineeringTest OrchestrationBlack Box TestingWhite Box TestingLog AnalysisRegression CoverageAnomaly Detection

Related Articles