本发明属于软件测试,具体涉及一种基于离散事件仿真引擎的系统自动测试方法和装置。
背景技术:
1、软件测试是评估软件质量的过程,旨在发现软件产品中的缺陷、错误或问题,是确保软件质量优劣的关键环节。传统的软件测试主要依赖于手动测试,即通过人工操作来验证系统功能和性能,但这种方法需要耗费大量的人力,并且有测试周期长、专业背景依赖强、出错率高等缺点,难以适应快速发展的测试需求。随着计算机技术的发展,自动测试开始成为一种便捷的选择。自动测试是指利用自动化工具和技术来执行测试活动的过程,通过预定义一系列测试流程和交互,实现流畅的、低交互的测试过程。
2、离散事件仿真是一种事件驱动的仿真方法,在离散事件仿真中,系统的行为被建模为一系列离散事件,这些事件在特定时间发生,并且会引起系统的状态变化,事件可以被定义为不同的类型,例如消息到达事件、任务开始或结束事件等。离散事件仿真引擎是离散事件仿真系统的底层支撑平台,具备事件管理、时间管理和实体管理等功能。离散事件仿真系统目前被广泛应用于交通物流、工业生产、社会关系、城市规划等各行各业。
3、离散事件仿真引擎在运行过程中会存储、处理、执行大量事件,其核心是确保按照规定的优先级和时间先后顺序执行这些事件。普通软件测试难以聚焦于离散事件仿真引擎运行过程中的各种事件和交互过程,无法满足离散事件仿真引擎的测试需求。在这种背景下,基于离散事件仿真引擎的系统自动测试方法和装置应运而生。
4、中国专利:仿真引擎的性能测试方法及存储介质(cn 107315889 b),提供了一种对仿真引擎的性能测试方法,然而,该专利仅提供了手动测试方法,测试人工成本高。
技术实现思路
1、本发明的目的是提供一种基于离散事件仿真引擎的系统自动测试方法和装置,使用基于智能体自动测试、基于历史数据自动测试以及基于人工辅助半自动测试等方法开展基于离散事件仿真引擎的系统测试,通过对运行过程中的离散事件调度情况、时间开销、异常容错处理等指标进行多维度分析,使测试人员能够高效、快速的对离散事件仿真引擎进行稳定性测试,为离散事件仿真引擎提供测试平台和高精准性测试保障。
2、本发明采用的技术方案如下:
3、一种基于离散事件仿真引擎的系统自动测试方法,包括以下步骤:
4、选择离散事件仿真引擎的测试模式,所述测试模式包括基于智能体自动测试、基于历史数据自动测试、基于人工辅助半自动测试;
5、根据选择的测试模式生成测试指令;
6、根据生成的测试指令对离散事件仿真引擎进行测试,并监测离散事件仿真引擎的运行状态;
7、生成离散事件仿真引擎的测试报告。
8、进一步地,所述根据选择的测试模式生成测试指令,其中基于智能体自动测试是根据智能体训练模型生成测试指令,基于历史数据自动测试是根据历史运行数据中的指令数据提取并下发指令,基于人工辅助半自动测试是采用手动测试的方式进行指令下达。
9、进一步地,所述根据生成的测试指令对离散事件仿真引擎进行测试,包括利用不同测试模式实现自动串行测试、自动并行测试以及周期循环测试;在所述基于智能体自动测试、所述基于历史数据自动测试中选择使用自动串行测试或自动并行测试,其中自动串行测试是基于相同离散事件仿真引擎和仿真条件逐一开展测试,自动并行测试是在多个计算环境中同时部署相同的仿真条件并分别开展测试;所述周期循环测试是按照用户定义的循环周期和循环次数执行特定测试运行场景和指令,覆盖多个测试周期进行连续测试,以便发现离散事件仿真引擎的潜在问题和逻辑错误、验证引擎的正确性和稳定性;若是周期循环测试,则选择测试模式并配置测试参数以继续进行测试,若否,则结束。
10、进一步地,所述基于智能体自动测试运用人工智能技术对离散事件仿真引擎的测试过程进行智能管理和交互,智能体根据测试策略生成相应的指令,并下达给离散事件仿真引擎;所述基于智能体自动测试包括数据处理、特征标识、特征模型生成、深度学习训练,首先针对指令数据集或者实时产生的仿真数据进行数据处理,为深度神经网络模型的训练提供数据基础,深度神经网络模型在特征模型的基础上进行迭代训练,实时更新特征模型中的特征标识,为智能体决策创造条件,在特征模型更新后,基于实时仿真状态自动生成指令,促使系统产生大量离散事件,推动系统运行,从而实现对离散事件仿真引擎的更加全面、高效的测试。
11、进一步地,所述基于历史数据自动测试,包括:
12、获取历史数据,包括历史配置、指令、态势数据;
13、对历史数据进行预处理操作,以满足后续测试的需求;
14、基于向量空间模型将每个历史指令文件表示为一个高维空间的向量,此向量由历史指令文件中所有历史指令的出现次数组成,反映历史指令出现的频次和重要性,通过计算两个向量之间的相似性,实现对历史指令之间的关联性分析,从而提取历史指令,并校验历史指令的正确性和完备性;
15、将提取出的历史指令发送至离散事件仿真引擎,用于在指定时刻触发某种特定事件或者交互行为。
16、进一步地,所述监测离散事件仿真引擎的运行状态,包括:
17、选择并配置测试模式;
18、自动配置测试参数,包括对仿真运行时间、仿真运行速度、仿真数据采集频次、数据存储路径;
19、生成符合离散事件仿真引擎测试需求的自动化测试脚本,运行测试脚本开始自动测试流程;
20、在运行过程中监测离散事件仿真引擎是否产生异常状态,若未产生异常状态,则执行下一步;若产生异常状态,则执行异常处理流程;
21、采集离散事件仿真引擎实时运行过程中产生的数据,为生成测试报告提供基础;
22、监测离散事件仿真引擎运行过程中生成的实时状态数据,结合运行过程中产生的实时状态数据和监测指标实时研判离散事件仿真引擎的实时运行情况。
23、一种基于离散事件仿真引擎的系统自动测试装置,其包括:
24、测试应用模块,用于选择离散事件仿真引擎的测试模式,包括基于智能体自动测试、基于历史数据自动测试、基于人工辅助半自动测试,根据选择的测试模式生成测试指令,根据生成的测试指令对离散事件仿真引擎进行测试;
25、运行监测模块,用于监测离散事件仿真引擎的运行状态;
26、报告生成模块,用于生成离散事件仿真引擎的测试报告。
27、本发明设计一种针对离散事件仿真引擎的系统自动测试方法和装置,提供了自动化、半自动化的测试方法,可以基于智能体进行自动测试、基于历史数据进行自动测试,还可以基于人工辅助进行半自动测试,提升测试效率的同时,还能针对离散事件的调度过程进行测试,使得测试场景的覆盖面更广、测试分支更加全面,能够满足基于离散事件仿真引擎的系统自动测试需求。
28、本发明提供了基于智能体自动测试、基于历史数据自动测试和基于人工辅助半自动测试三种测试模式;提供了包含测试运行准备、测试运行监测和运行结果分析的全套测试流程,能够快速、准确地对离散事件仿真引擎进行测试,有效提高测试效率,减少人工成本。
29、本发明提供的基于离散事件仿真引擎的系统自动测试方法具备以下功能:①提供基于智能体自动测试,能够快速高效地与离散事件仿真引擎开展指令下达和数据交互,有效提高了测试分支的覆盖广度;②提供基于历史数据自动测试,结合已有测试运行场景中的指令集,针对测试场景快速生成指令交互,有效提高测试效率和测试灵活性;③面向离散事件仿真引擎开展测试,对离散事件仿真引擎在测试运行准备、测试运行监测和运行结果分析的全套测试流程开展自动测试,采用离散事件多维度分析方法,针对性地满足离散事件仿真引擎的测试需求。综上,本发明提供的基于离散事件仿真引擎的系统自动化测试方法能够满足对离散事件仿真引擎的自动化、高效、精准测试需求,为离散事件仿真引擎的优化与迭代提供了坚实的测试基础。
1.一种基于离散事件仿真引擎的系统自动测试方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,所述根据选择的测试模式生成测试指令,其中基于智能体自动测试是根据智能体训练模型生成测试指令,基于历史数据自动测试是根据历史运行数据中的指令数据提取并下发指令,基于人工辅助半自动测试是采用手动测试的方式进行指令下达。
3.根据权利要求1所述的方法,其特征在于,所述根据生成的测试指令对离散事件仿真引擎进行测试,包括利用不同测试模式实现自动串行测试、自动并行测试以及周期循环测试;在所述基于智能体自动测试、所述基于历史数据自动测试中选择使用自动串行测试或自动并行测试,其中自动串行测试是基于相同离散事件仿真引擎和仿真条件逐一开展测试,自动并行测试是在多个计算环境中同时部署相同的仿真条件并分别开展测试;所述周期循环测试是按照用户定义的循环周期和循环次数执行特定测试运行场景和指令,覆盖多个测试周期进行连续测试,以便发现离散事件仿真引擎的潜在问题和逻辑错误、验证引擎的正确性和稳定性;若是周期循环测试,则选择测试模式并配置测试参数以继续进行测试,若否,则结束。
4.根据权利要求1所述的方法,其特征在于,所述基于智能体自动测试运用人工智能技术对离散事件仿真引擎的测试过程进行智能管理和交互,智能体根据测试策略生成相应的指令,并下达给离散事件仿真引擎;所述基于智能体自动测试包括数据处理、特征标识、特征模型生成、深度学习训练,首先针对指令数据集或者实时产生的仿真数据进行数据处理,为深度神经网络模型的训练提供数据基础,深度神经网络模型在特征模型的基础上进行迭代训练,实时更新特征模型中的特征标识,为智能体决策创造条件,在特征模型更新后,基于实时仿真状态自动生成指令,促使系统产生大量离散事件,推动系统运行,从而实现对离散事件仿真引擎的更加全面、高效的测试。
5.根据权利要求1所述的方法,其特征在于,所述基于历史数据自动测试,包括:
6.根据权利要求1所述的方法,其特征在于,所述监测离散事件仿真引擎的运行状态,包括:
7.根据权利要求1所述的方法,其特征在于,所述生成离散事件仿真引擎的测试报告,包括:
8.一种基于离散事件仿真引擎的系统自动测试装置,其特征在于,包括:
9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行权利要求1~7中任一项所述方法的指令。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机程序,所述计算机程序被计算机执行时,实现权利要求1~7中任一项所述的方法。