Software Test Automation Maturity -- A Survey of the State of the Practice
软件行业对测试自动化越来越感兴趣。在本文中,我们提出了一个测试自动化成熟度调查作为一个自我评估的从业者。基于来自25个国家的101个组织的151名从业者的回应,我们对测试自动化成熟度的实践状态进行了观察:a)不同组织的测试自动化成熟度水平由他们采用的实践区分; b)从业者报告了不同实践的不同情况,例如,85%的从业者认为他们的测试团队有足够的测试自动化专业知识和技能,47%的从业者承认缺乏设计和执行自动化测试的指导方针; c)一些实践是强相关的和/或紧密聚集的; d)自动化测试案例的百分比以及敏捷和/或或DevOps开发模型是更高测试自动化成熟度水平的良好指标;(e)从业者的角色可能会影响响应变化,例如,QA工程师给出了最乐观的答案,顾问给出了最悲观的答案。我们的研究结果提供了一个深入了解目前的测试自动化过程和实践,并指出在目前的行业进一步改进的机会。
2020-04-20 cs.SE
Test Automation Maturity Improves Product Quality -- Quantitative Study of Open Source Projects Using Continuous Integration
持续集成(CI)的流行是由于频繁发布产品功能或更新的市场压力而增加的。CI快速交付质量的能力取决于可靠的测试自动化。在本文中,我们提出了一个实证研究,以观察测试自动化成熟度(在文献中的标准最佳实践评估)对产品质量,测试自动化的努力,并在开源项目的CI上下文中的发布周期的影响。我们进行了测试自动化成熟度调查,并从37个开源java项目中得到了回复。我们还挖掘了相同项目的软件存储库。回归分析的主要结果显示,较高的测试自动化成熟度水平与较高的产品质量(p值=0.000624)和较短的发布周期(p值=0.01891)正相关;没有统计学显著证据表明,由于较高的测试自动化成熟度和产品质量水平,测试自动化工作量增加。因此,我们的结论是,提高测试自动化成熟度(使用标准的最佳实践)的一个潜在的好处是产品质量的提高和发布周期的加速,在开源项目的CI环境。我们鼓励未来的研究通过添加更多具有不同程序设计语言和CI工具的数据集、闭源项目和大型工业项目来扩展我们的研究结果。我们对从业者的建议(在类似的CI环境中)是利用标准的最佳实践来提高测试自动化成熟度。
2022-02-07 cs.SE
Test Automation Process Improvement in a DevOpsTeam: Experience Report
如何成功地进行持续开发的测试自动化过程改进(TAPI),包括迭代软件开发,持续测试和交付,是许多软件组织面临的挑战。在本文中,我们介绍了F-Secure(芬兰软件公司)的一个DevOps团队在TAPI上的经验报告。该团队构建Windows应用软件,并存在于F-Secure的TAPI文化中。该团队自我报告在持续开发的测试自动化方面的高满意度和成熟度。为了研究他们的TAPI,我们回顾了一系列经验记录、团队反思报告和遥测结果报告。随后,又召开了几次会议讨论细节。我们发现,基于团队的理解,持续开发的测试自动化成熟度被定义为一组指标,例如,提高发布速度,提高团队的生产力,测试效率高。第二,该小组指出,一系列关键的成功因素对成功执行其TAPI具有重大影响,例如,增量方法,整个团队的努力,测试工具的选择和架构,遥测。第三,我们将观察团队中的TAPI实践与先前文献中描述的实践进行比较。该团队认为,现有的测试自动化成熟度方法应该包括已确定的实践,如整个团队努力为软件行业构建更全面的测试自动化改进模型。
2020-04-15 cs.SE
A Brief Survey on Oracle-based Test Adequacy Metrics
代码覆盖率是一个流行的和广泛的测试充分性度量,它测量测试套件执行的程序代码的百分比。尽管代码覆盖率很受欢迎,但它有几个限制。其中一个主要的限制是,它没有提供任何关于测试神谕的质量或数量的见解,这是测试的核心组成部分。由于这种限制,一些研究表明,覆盖率是一个很差的测试充分性度量;因此,它不应该被用作测试套件的故障检测有效性的指标。为了解决这个问题,研究人员提出了扩展传统的结构化代码覆盖率,明确考虑测试预言机的质量。我们将这些扩展称为基于Oracle的代码覆盖率。这份调查报告研究了自2007年以来发布的基于甲骨文的覆盖技术。我们讨论每个指标的定义,方法,实验研究和研究结果。尽管基于甲骨文的覆盖度量被证明在检测故障方面比传统的覆盖更有效,但它们在软件工程社区中很少受到关注。我们提出了所有现有的基于Oracle的充分性度量在本文中,并相互比较的关键功能。我们观察到,不同的基于甲骨文的充分性度量在不同的覆盖域上运行,并使用不同的底层分析技术,使软件测试人员能够根据测试要求选择适当的度量。我们的论文提供了有价值的信息,基于甲骨文的方法的局限性,解决这可能有助于他们更广泛地采用软件测试自动化。
2023-02-15 cs.SE
Automated, Cost-effective, and Update-driven App Testing
应用程序在我们社会中的普遍作用导致了测试自动化方法的定义,以确保其可靠性。然而,最先进的方法往往会产生大量的测试输入,不太可能达到超过50%的方法覆盖率。在本文中,我们提出了一种策略,以实现显着更高的覆盖率的代码更新的测试输入的数量少得多,从而减轻了测试预言的问题。更具体地说,我们提出了ATUA,一个基于模型的方法,综合应用模型与静态分析,集成了一个动态细化的状态抽象功能,并结合互补的测试策略,包括(1)覆盖的模型结构,(2)覆盖的应用程序代码,(3)随机探索,(4)覆盖的依赖关系,通过信息检索确定。其基于模型的策略使ATUA能够生成一小部分输入,这些输入仅用于执行受更新影响的代码。反过来,这使得常见的测试Oracle解决方案更具成本效益,因为它们往往涉及人工工作。一项针对九个流行Android应用程序的72个应用程序版本进行的大型实证评估表明,在测试应用程序更新时,ATUA比最先进的方法更有效,工作量更少。
2021-12-06 cs.SE
Adaptive Automation: Leveraging Machine Learning to Support Uninterrupted Automated Testing of Software Applications
使用自动化软件工具检查软件应用程序的适用性已成为大多数组织的一个重要因素,无论他们是生产内部软件还是简单地定制现成的软件应用程序供内部使用。随着软件解决方案变得越来越复杂,行业越来越依赖于软件自动化工具,但可用软件自动化工具的脆弱性限制了它们的有效性。公司在获得和实现自动化软件方面投入了大量资金,但当维护有效的自动化测试套件的成本超过手动测试所花费的成本和时间时,大多数工具都无法交付。当前一代软件自动化工具的一个缺点是,它们不能在没有频繁(和时间昂贵)的手动干预的情况下适应意外的修改和障碍。这些问题在行业从业者中是公认的,但目前这一代工具都没有利用机器学习和人工智能的进步来解决这些问题。本文提出了一个框架解决方案,利用机器学习的概念,即模糊匹配和错误恢复。建议的解决方案应用自适应技术来从意外的障碍中恢复,否则这些障碍会阻止脚本继续执行。恢复细节在报告中呈现给用户,可以分析该报告以确定恢复程序是否可接受,并且框架将根据用户的决定调整未来的运行。使用这个框架,从业者可以在没有人为干预的情况下运行自动化套装,同时最大限度地降低了时间表延迟的风险。
2015-08-04 cs.SE
Enterprise-Driven Open Source Software: A Case Study on Security Automation
本文通过挖掘8243个企业驱动的开源软件仓库并调查维护者,发现仅6.83%的项目在CI流水线中应用安全自动化,揭示了安全活动稀缺和防护覆盖率低的问题,并呼吁业界关注第三方软件漏洞和改进实践。
2021-02-10 cs.SE
Bot-Driven Development: From Simple Automation to Autonomous Software Development Bots
本文研究机器人驱动的开发(BotDD)如何从简单自动化演进为自主决策的软件开发机器人,并提出研究议程以解决人机信任、技能发展和治理等关键挑战。
2024-11-25 cs.SE
A Path Less Traveled: Reimagining Software Engineering Automation via a Neurosymbolic Paradigm
本文提出神经符号软件工程(NSE)范式,将神经学习与符号推理结合并引入受控混沌,以提升AI驱动软件工程自动化的效率、可靠性和透明度。
2025-05-04 cs.SE
Designing Adaptive Developer-Chatbot Interactions: Context Integration, Experimental Studies, and Levels of Automation
针对软件开发复杂度高、上下文多样且相关交互研究不足的问题,本研究探索基于上下文的开发者-聊天机器人自适应交互设计,以形成支持开发者工作的方案与知识。
2023-05-01 cs.SE
umd-verification: Automation of Software Validation for the EGI federated e-Infrastructure
在EGI e-Infrastructure中支持e-Science需要广泛而可靠的软件,用于高级计算用途,部署在大约300个欧洲和全球数据中心。统一中间件分发(UMD)和云中间件分发(CMD)是为EGI电子基础设施消费提供软件的渠道。软件按照软件供应过程(SWPP)进行编译、确认和分发,其中质量标准(QC)定义设定了EGI验收的最低质量要求。目前UMD和CMD发行版中存在的软件组件越来越多,阻碍了传统的基于手动的验证机制的应用,从而推动了自动化解决方案的采用。本文介绍了umd验证,一个开源的工具,强制执行的QC要求,在一个自动化的方式为科学处置的软件产品的持续验证的履行。UMD验证工具已成功集成到SWPP管道中,并逐步支持UMD和CMD存储库中产品的全面验证。虽然支持新产品的成本取决于基础设施即代码解决方案的可用性,以接管部署和高测试覆盖率,但已经集成的产品所获得的结果是有希望的,因为产品验证所投入的时间已经大大减少。此外,自动化的采用为流程的可靠性带来了好处,例如消除了与人为相关的错误或先前测试功能的回归风险。
2018-07-30 cs.SE
Designing and Implementing Robust Test Automation Frameworks using Cucumber BDD and Java
本文提出基于Cucumber BDD和Java的健壮测试自动化框架,通过模块化架构和自然语言语法提升沟通与可维护性,实证表明能减少手动测试并增强缺陷检测与软件可靠性。
2025-05-22 cs.SE
Requirement verification in simulation-based automation testing
工业互联网的出现导致自动化系统和待控制过程之间越来越多的复杂的时间相关性。需要比形式化验证方法更好地扩展并且比测试更精确的验证方法。基于仿真的运行时验证提出了这样一种方法,并提出了一个应用程序的度量时序逻辑的贡献。所提出的方法的实际可扩展性进行了验证,对工业合作伙伴设计的生产过程中,发现的要求违反。
2017-04-25 cs.LO cs.SE
Generic and Effective Specification of Structural Test Objectives
虽然已经提出了广泛的不同的,有时异构的测试覆盖标准,不存在通用的形式主义来描述它们,可用的测试自动化工具通常只支持其中的一小部分。我们引入了一个统一的规约语言,称为HTOL,提供了一个强大的通用机制来定义测试目标,它允许编码许多现有的标准,并支持他们在一个统一的方式。HTOL具有形式化的语义,可以在多个执行中表达复杂的需求(使用超标签的新概念),以及整个程序执行中的替代需求或需求。提出了一种新的分类的一大类现有的标准。最后,已实施的HTOL目标的覆盖率测量工具。初步实验表明,该方法是有效的和实用的。
2017-01-19 cs.SE
Breaking Barriers in Software Testing: The Power of AI-Driven Automation
MUFG Bank(三菱日联银行);Cisco Systems Inc(思科系统公司)
本文提出一个融合 NLP、强化学习与预测模型的 AI 驱动测试框架,将需求自动转化为可执行测试并持续优化,实现从手动测试向主动自适应测试的转变,提升缺陷检测效率与软件可靠性。
2025-08-22 cs.AI cs.SE
Nudging Students Toward Better Software Engineering Behaviors
大型本科计算机科学课程的学生体验越来越受到自动化系统的影响。机器人,或软件自动化的代理,对于有效地分级和生成反馈是有用的。目前CS教育中的自动化工作集中在支持教学任务上,但并没有解决学生由于不良行为(如拖延)而产生的问题。在本文中,我们探讨使用机器人,以改善软件工程的行为,学生使用开发人员推荐选择架构,一个框架,将行为科学的概念,建议,以改善程序员的行动。我们在class-bot中实现了这个框架,这是一个新颖的系统,旨在推动学生在编程作业时做出更好的选择。这项工作提出了一个初步的评价,将这个工具在一个介绍性的编程课程。我们的研究结果表明,类机器人有利于改善学生的开发行为,提高代码质量和生产力。
2021-03-17 cs.SE
GitHub Marketplace for Practitioners and Researchers to Date: A Systematic Analysis of the Knowledge Mobilization Gap in Open Source Software Automation
用于分发软件产品和服务的市场已经变得越来越受欢迎。GitHub以其通过Git提供的版本控制功能而闻名,于2017年推出了自己的市场。GitHub Marketplace托管第三方应用程序和操作,以自动化软件团队的工作流程。目前,该市场拥有32个不同类别的440个应用程序和7,878个操作。总体而言,419个第三方开发者在这个平台上发布了他们的应用程序,111个不同的客户采用了它们。GitHub项目的流行和可访问性使得这个平台和托管在其上的项目成为软件工程研究中最常见的实验对象之一。一个简单的Google Scholar搜索显示,自2017年以来,有24,100篇研究论文在软件工程领域讨论了GitHub,但没有一篇研究了市场。GitHub Marketplace提供了一个独特的信息来源,介绍了开源软件(OSS)生态系统中从业者用于自动化项目工作流程的工具。在这项研究中,我们(i)挖掘并提供GitHub Marketplace的描述性概述,(ii)对开源软件自动化的研究进行系统的映射,以及(iii)比较自动化工具的最新技术水平和实践水平。最后,我们讨论了GitHub Marketplace在该领域内的知识动员和协作潜力。这是该领域对GitHub Marketplace的第一次研究。
2022-07-31 cs.SE
Beyond LLM-based test automation: A Zero-Cost Self-Healing Approach Using DOM Accessibility Tree Extraction
本文提出一种零成本自愈测试自动化框架,通过结构化可访问性树提取算法替代LLM发现,采用十级优先级定位层级,实现单次遍历生成稳健选择器,验证结果显示在31个测试组合中100%通过,执行时间仅22秒,且自愈机制在1秒内检测并重发现失效选择器。
2026-03-20 cs.SE
Machine Learning in the Wild: Early Evidence of Non-Compliant ML-Automation in Open-Source Software
University of Sannio(桑尼奥大学)
本文研究173个开源项目中机器学习模型的使用情况,分析其决策范围及合规性,为开发指南和监管工具提供基础。
2026-03-31 cs.SE
Automation of Android Applications Testing Using Machine Learning Activities Classification
Weizmann Institute of Science(魏茨曼科学研究所);Bar-Ilan University(巴伊兰大学)
全球一半以上的人口每天都在使用移动应用程序来执行各种各样的任务。随着这些应用程序的日益广泛的使用,需要有效的技术来测试它们。许多框架允许自动化应用程序测试的过程,然而现有的框架主要依赖于应用程序开发人员为每个开发的应用程序提供测试脚本,从而防止这些测试重复用于类似的应用程序。在本文中,我们提出了一种新的方法来自动化测试的Android应用程序,利用机器学习技术和重用流行的测试场景。我们讨论并展示了我们的方法在实证研究中的潜在好处,我们表明,我们开发的测试工具,所提出的方法的基础上,在现实环境中优于标准方法。
2017-09-04 cs.AI cs.SE
Automated Control Logic Test Case Generation using Large Language Models
本文提出利用大型语言模型自动生成PLC控制逻辑测试用例,实验表明该方法快速易用且对中低复杂度程序语句覆盖率高,但生成的断言仍需人工修正。
2024-05-03 cs.SE
Sustainability Analysis of Prompt Strategies for SLM-based Automated Test Generation
University Of Calgary(卡尔加里大学)
本文研究了基于小语言模型的自动化测试生成中提示策略对计算和环境可持续性的影响,通过实验评估七种策略,发现策略选择对可持续性指标有显著影响,简单策略更环保。
2026-04-03 cs.SE
Navigating the growing field of research on AI for software testing -- the taxonomy for AI-augmented software testing and an ontology-driven literature survey
Technische Universität Berlin(柏林技术大学)
本文针对软件测试自动化投入成本高的问题,综述了各自动化程度下的AI增强软件测试研究及AI催生的新型测试,提出分类体系ai4st以梳理现有研究、明确开放问题。
2025-06-17 cs.AI cs.SE
Coyote C++: An Industrial-Strength Fully Automated Unit Testing Tool
本文介绍了Coyote C++,一款基于混合符号执行的工业级C和C++全自动化单元测试工具,它无需用户参与即可一键完成测试生成与执行,持续达到约90%的代码覆盖率。
2023-10-23 cs.PL cs.SE
Understanding: reframing automation and assurance
City St Georges, University of London(伦敦大学城市圣乔治学院)
本文探讨了安全性和保证案例在负责任的工程和治理决策中可能脱离理解的问题,提出通过结构化论证、证据和理论自动化构建Assurance 2.0,以增强决策中的理解能力。
2026-04-07 cs.CY cs.SE
Understanding Hackers' Work: An Empirical Study of Offensive Security Practitioners
针对白帽黑客短缺导致软件安全测试覆盖不足的问题,该研究对12名安全从业者开展数据驱动的定性研究,通过主题分析梳理其工作流程、思维与挑战,为自动化安全测试工具研发提供建议与新方向。
2023-08-23 cs.CR cs.SE
Combining closed-loop test generation and execution by means of model checking
模型检验是一种成熟的技术,用于形式化地验证需要可信的自动化系统。然而,对于足够复杂的系统,模型检验在计算上变得不可行。另一方面,测试,这提供了较低的可靠性,往往不会提出一个严重的计算挑战。寻找这两种方法之间的协同作用,本文提出了一个框架,以确保工业自动化系统的可靠性,通过混合使用模型检验和测试。该框架代表了一种在验证可靠性和计算复杂性之间实现折衷的方式,这在其他方法中尚未被探索。代替经历通常的模型检验,系统需求仅在特定的系统行为上被检验,所述特定的系统行为表示实现对系统和需求两者的覆盖的测试套件。然后,框架的所有阶段都支持闭环模型的情况,其中不仅对控制器进行建模,而且对工厂进行建模。
2019-07-27 cs.FL cs.SE
The Future of Software Testing: AI-Powered Test Case Generation and Validation
本文探讨AI如何通过自动化测试用例生成与验证,提升软件测试的效率、准确性和可扩展性,同时解决数据质量、模型透明性和人机平衡等挑战。
2026-03-07 cs.AI cs.SE
PRISMA-LLM: An Empirical Reporting Framework for AI-Assisted Systematic Reviews
Icahn School of Medicine at Mount Sinai(西奈山伊坎医学院)
针对AI辅助系统评价中报告不一致的问题,提出PRISMA-LLM框架,区分实现披露与后果敏感的评估及局限性报告。
2026-09-14 cs.AI cs.CL cs.SE