Using Large Language Models for Black-Box Testing of FMU-Based Simulations
作者: Abdullah Mughees, Gaadha Sudheerbabu, Tanwir Ahmad, Dragos Truscan, Mikael Manngård, Kristian Klemets
分类: cs.SE, eess.SY
发布日期: 2026-04-28
💡 一句话要点
提出一种基于大语言模型(LLM)的FMU黑盒测试方法,旨在降低人工测试成本并提高结果可解释性。
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 大语言模型 黑盒测试 功能样机单元 动态仿真模型 自动化测试
📋 核心要点
- 传统动态仿真模型测试依赖人工定义测试场景,耗时且易出错,缺乏可解释性。
- 利用LLM理解FMU规范,自动生成Given-When-Then格式的测试场景,降低人工干预。
- 实验表明,该方法能有效辅助动态仿真模型的自动测试设计和验证,提升测试效率。
📝 摘要(中文)
本文提出了一种人机协作的方法,利用大语言模型(LLM)对功能样机单元(FMU)进行黑盒测试。该方法旨在减少动态仿真模型测试场景定义的人工工作量,并提高结果的可解释性。该方法以FMU的功能和接口规范作为输入,提示LLM生成结构化的场景目标,格式为Given-When-Then,定义仿真的初始输入条件、这些条件可能发生的变化以及系统针对这些变化的预期输出行为。相应的场景计划指定输入模式,并添加断言预言,描述场景目标中定义的预期输出模式。该方法为场景计划生成完整的输入时间序列,运行FMU仿真,并评估记录输出上的断言。它生成人类可读的日志和图表,显示每个场景的统计信息,包括叠加图、总体通过率和每个目标的输出结果。生成的场景和结果被存储以供评估和后续重新执行。我们在润滑油冷却系统上评估了该方法,并讨论了使该方法在日常使用中切实可行的设计选择。结果表明,LLM辅助的场景生成可以促进动态仿真模型的自动测试设计和验证。
🔬 方法详解
问题定义:现有动态仿真模型,特别是基于FMU的模型,其黑盒测试过程高度依赖人工设计测试用例。人工设计不仅耗时耗力,而且难以覆盖所有可能的场景,测试结果的可解释性也较差。因此,如何降低人工测试成本,提高测试覆盖率和结果可解释性,是亟待解决的问题。
核心思路:本文的核心思路是利用大语言模型(LLM)的自然语言理解和生成能力,将FMU的功能和接口规范转化为结构化的测试场景。LLM可以根据给定的FMU描述,自动生成Given-When-Then格式的测试目标,并进一步生成具体的测试计划,包括输入模式和断言预言。这种方法旨在减少人工干预,提高测试效率和覆盖率。
技术框架:该方法包含以下几个主要模块:1) FMU规范输入:接收FMU的功能和接口规范作为输入。2) LLM场景生成:利用LLM生成Given-When-Then格式的场景目标和相应的场景计划。3) 测试用例生成:根据场景计划生成完整的输入时间序列。4) FMU仿真执行:运行FMU仿真,并记录输出结果。5) 断言评估:评估记录输出上的断言,判断测试是否通过。6) 结果可视化:生成人类可读的日志和图表,展示测试结果。
关键创新:该方法最重要的创新点在于利用LLM自动生成测试场景,从而显著降低了人工测试成本。与传统的基于规则或模型的测试方法相比,LLM能够更好地理解FMU的功能和接口规范,生成更具多样性和覆盖率的测试用例。此外,Given-When-Then格式的场景目标也提高了测试结果的可解释性。
关键设计:在LLM场景生成阶段,需要精心设计Prompt,以引导LLM生成高质量的测试场景。Prompt的设计需要考虑到FMU的功能和接口规范,以及测试的目标。此外,断言预言的设计也至关重要,需要准确描述预期的输出模式。具体参数设置和网络结构未在论文中详细描述,属于LLM本身的设计。
🖼️ 关键图片
📊 实验亮点
该方法在润滑油冷却系统上进行了评估,结果表明,LLM辅助的场景生成可以有效促进动态仿真模型的自动测试设计和验证。通过生成多样化的测试场景,该方法能够覆盖更多的潜在问题,并提高测试效率。具体的性能数据和提升幅度未在摘要中明确给出,需要参考论文全文。
🎯 应用场景
该研究成果可应用于各种基于FMU的动态仿真模型的测试和验证,例如汽车、航空航天、能源等领域。通过自动化测试场景生成,可以显著降低测试成本,提高产品质量和可靠性。未来,该方法有望扩展到更复杂的系统和模型,并与其他自动化测试技术相结合,实现更高效的测试流程。
📄 摘要(原文)
We propose a human in the loop approach for black-box testing of Functional Mock-up Units (FMUs) using Large Language Models (LLMs). The goal is to reduce the manual effort in defining test scenarios for dynamic simulation models and to improve the interpretability of results. The approach takes the functional and interface specifications of an FMU as input, and prompts an LLM to generate structured scenario goals in Given-When-Then format that define the initial input conditions of the simulation, a possible change in those conditions, and the expected output behaviour of the system against those changes. The corresponding scenario plans specify input patterns and add assertion oracles that describe expected output patterns defined in scenario goals. The approach generates a complete input time series for the scenario plans, runs the FMU simulation, and evaluates assertions on the recorded outputs. It produces human-readable logs and plots that show statistics for each scenario with overlays, aggregate pass rates, and per-goal outcomes. The generated scenarios and results are stored for evaluation and later re-execution. We evaluate the approach on a Lube Oil Cooling system and discuss design choices that make the approach practical for everyday use. Results suggest that LLM-assisted scenario generation can facilitate automatic test design and verification of dynamic simulation models.