面向无人机航拍测试需求形式化的测试用例生成方法及系统

摘要: 本技术涉及软件测试,具体为面向无人机航拍测试需求形式化的测试用例生成方法及系统。背景技术:1、随着无人机在灾害监测、林业巡检、农业遥感等领域的广泛应用,其视觉感...
面向无人机航拍测试需求形式化的测试用例生成方法及系统

本技术涉及软件测试,具体为面向无人机航拍测试需求形式化的测试用例生成方法及系统。

背景技术:

1、随着无人机在灾害监测、林业巡检、农业遥感等领域的广泛应用,其视觉感知系统需要在复杂环境和极端条件下保持稳定可靠的运行能力。无人机视觉感知算法通常依赖大量不同环境条件下的图像数据进行测试与验证,而实际测试过程中,极端天气、复杂光照以及传感器异常等边界场景难以通过真实采集方式快速获取。

2、基于模型的系统工程(mbse)通过建立系统模型实现需求分析、设计验证以及测试管理的一体化。其中,系统建模语言(sysml)作为mbse领域的重要建模语言,通过块定义图(block definition diagram,bdd)描述系统的结构组成、模块关系以及接口信息,为复杂系统建模提供了有效支撑。

3、然而,扩散模型能够生成高质量视觉图像,但现有方法通常依赖人工设计提示词(prompt)控制生成过程,缺少将领域测试需求中的场景语义、环境条件以及物理参数自动映射为扩散模型输入参数的方法,使得生成测试数据过程存在较大的随机性和不确定性,难以保证生成结果的一致性。

技术实现思路

1、本发明的目的是:针对现有技术通常依赖人工设计提示词(prompt)控制生成过程,缺少将领域测试需求中的场景语义、环境条件以及物理参数自动映射为扩散模型输入参数的方法,使得生成测试数据过程存在较大的随机性和不确定性,难以保证生成结果的一致性的问题,提供面向无人机航拍测试需求形式化的测试用例生成方法及系统。

2、本发明为了解决上述技术问题采取的技术方案是:

3、面向无人机航拍测试需求形式化的测试用例生成方法,包括以下步骤:

4、步骤1:构建面向无人机航拍测试需求的sysml扩展模型;

5、步骤2:基于sysml扩展模型,并结合测试需求内容,构建无人机航拍测试需求模型;

6、步骤3:利用模型解析器对无人机航拍测试需求模型进行信息提取,生成结构化测试需求数据;

7、步骤4:基于结构化测试需求数据,将结构化测试需求数据中的语义描述和数值型描述转换为正向提示词,并调用预先设定的负向提示词,生成对应的控制参数;

8、步骤5:调用文本生成式扩散模型,并根据控制参数生成满足无人机航拍视觉测试需求的边界场景测试图像。

9、进一步的,所述步骤1的具体步骤为:

10、基于sysml元模型扩展机制,对块定义图内的block元素进行元模型扩展,并在元模型中新增用于表征测试场景信息的testcomponent元类,以此得到扩展后的元模型,

11、之后依托扩展后的元模型构建物理实体构造型<>、测试信息构造型<>以及继承于测试信息构造型<>的构造型<>后,得到面向无人机航拍测试需求的sysml扩展模型;

12、所述物理实体构造型<>用于对物理实体进行描述,所述物理实体包括无人机的传感器、执行器、控制器;

13、所述测试信息构造型<>用于承载各类测试信息;

14、所述继承于<>的构造型<>用于标记需要参与生成式测试数据生成的模型元素;

15、所述testcomponent元类包含场景名称、语义描述和数值型描述属性。

16、进一步的,所述步骤2的具体步骤为:

17、基于步骤一构建的sysml扩展模型,在块定义图中创建初始测试需求模型,根据需要生成测试数据的测试场景在初始测试需求模型中定义对应的testcomponent属性,并对需要生成测试数据的测试场景应用<>构造型,以此得到最终测试需求模型。

18、进一步的,所述步骤3的具体步骤为:

19、搭建模型解析器,并将测试需求模型作为输入,识别被<>标记的模型元素,并提取元素中的场景名称、语义描述、数值型描述,进而得到输出的结构化测试需求数据。

20、进一步的,所述步骤4的具体步骤为:

21、搭建提示词编译器,提示词编译器首先提取语义描述作为正向提示词的首部基底,以形成扩散模型可识别的基础语义描述,随后对数值型描述中的键值对进行词元权重转换,将各参数严格格式化为(keyword: weight)结构,用于生成特征控制标签,最后将基础语义描述、特征控制标签以及预先设定的负向提示词按逗号分隔进行拼接,得到控制参数。

22、面向无人机航拍测试需求形式化的测试用例生成系统,所述系统包括需求模型构建模块、模型解析器模块、提示词编译器模块以及扩散模型模块;

23、所述需求模型构建模块用于构建面向无人机航拍测试需求的sysml扩展模型,并基于sysml扩展模型,并结合测试需求内容,构建无人机航拍测试需求模型;

24、所述模型解析器模块用于利用模型解析器对无人机航拍测试需求模型进行信息提取,生成结构化测试需求数据;

25、所述提示词编译器模块基于结构化测试需求数据,将结构化测试需求数据中的语义描述和数值型描述转换为正向提示词,并调用预先设定的负向提示词,生成对应的控制参数;

26、所述扩散模型模块用于调用文本生成式扩散模型,并根据控制参数生成满足无人机航拍视觉测试需求的边界场景测试图像。

27、进一步的,所述需求模型构建模块中构建面向无人机航拍测试需求的sysml扩展模型的具体步骤为:

28、基于sysml元模型扩展机制,对块定义图内的block元素进行元模型扩展,并在元模型中新增用于表征测试场景信息的testcomponent元类,以此得到扩展后的元模型,

29、之后依托扩展后的元模型构建物理实体构造型<>、测试信息构造型<>以及继承于测试信息构造型<>的构造型<>后,得到面向无人机航拍测试需求的sysml扩展模型;

30、所述物理实体构造型<>用于对物理实体进行描述,所述物理实体包括无人机的传感器、执行器、控制器;

31、所述测试信息构造型<>用于承载各类测试信息;

32、所述继承于<>的构造型<>用于标记需要参与生成式测试数据生成的模型元素;

33、所述testcomponent元类包含场景名称、语义描述和数值型描述属性。

34、进一步的,所述需求模型构建模块中基于sysml扩展模型,并结合测试需求内容,构建无人机航拍测试需求模型的具体步骤为:

35、基于步骤一构建的sysml扩展模型,在块定义图中创建初始测试需求模型,根据需要生成测试数据的测试场景在初始测试需求模型中定义对应的testcomponent属性,并对需要生成测试数据的测试场景应用<>构造型,以此得到最终测试需求模型。

36、进一步的,所述模型解析器模块具体执行如下步骤:

37、搭建模型解析器,并将测试需求模型作为输入,识别被<>标记的模型元素,并提取元素中的场景名称、语义描述、数值型描述,进而得到输出的结构化测试需求数据。

38、进一步的,所述提示词编译器模块具体执行如下步骤:

39、搭建提示词编译器,提示词编译器首先提取语义描述作为正向提示词的首部基底,以形成扩散模型可识别的基础语义描述,随后对数值型描述中的键值对进行词元权重转换,将各参数严格格式化为(keyword: weight)结构,用于生成特征控制标签,最后将基础语义描述、特征控制标签以及预先设定的负向提示词按逗号分隔进行拼接,得到控制参数。

40、本发明的有益效果是:

41、本技术通过模型解析器对无人机航拍测试需求模型进行信息提取,生成结构化测试需求数据,并通过将结构化测试需求数据中的语义描述和数值型描述转换为正向提示词,并调用预先设定的负向提示词,生成对应的控制参数。以此避免了人工设计提示词造成的不确定性,保证了生成结果的一致性。