软件系统测试方法、装置、设备及可读存储介质与流程

文档序号:33481753发布日期:2023-03-15 12:34阅读:43来源:国知局
软件系统测试方法、装置、设备及可读存储介质与流程

1.本发明涉及装备软件系统测试技术领域,尤其涉及一种软件系统测试方法、装置、设备及可读存储介质。


背景技术:

2.软件系统测试是对航天系统中各装备软件功能之间的相互匹配性在系统层面的测试,对软件正确实现系统要求的功能有很大帮助,是航天系统中各装备软件验证的必要环节。当前基于can总线通讯的软件系统测试方法需要软件测试人员结合调试测试工具,逐一设计测试用例,并开展测试用例执行等相关工作,测试分析效率低且不直观。此外,基于can总线的软件系统测试经验碎片化的存在于各试验报告中,实际测试工作中难以保证软件系统测试的充分性。


技术实现要素:

3.本发明的主要目的在于提供一种软件系统测试方法、装置、设备及可读存储介质,旨在解决现有基于can总线通讯的软件系统测试方法,其测试效率低且测试质量不高的技术问题。
4.第一方面,本发明提供一种软件系统测试方法,所述软件系统测试方法包括以下步骤:
5.获取软件系统测试界面控件触发的测试业务选项,并基于所述测试业务选项进行对应的测试;
6.基于can消息触发事件或状态触发事件获取测试过程中的过程数据;
7.对所述过程数据进行数据处理,得到数据处理结果;
8.将软件系统测试界面窗口环境变量链接于所述数据处理结果,基于所述数据处理结果显示各装备软件的功能测试结果与can接口测试结果。
9.可选的,在所述获取软件系统测试界面控件触发的测试业务选项,并基于所述测试业务选项进行对应的测试的步骤之前包括:
10.确定运行各装备软件的节点单机是否均为实物单机;
11.若确定运行各装备软件的节点单机均为实物单机,则测试业务选项为对运行在实物单机上的所有软件进行系统测试;
12.若确定运行各装备软件的节点单机非均为实物单机,则测试业务选项为对运行在实物单机上的软件进行配置项测试。
13.可选的,所述基于所述测试业务选项进行对应的测试的步骤包括:
14.若测试业务选项为对运行在实物单机上的软件进行配置项测试,则基于非实物单机的类型模拟非实物单机对应的业务,对运行在实物单机上的软件做配置项测试。
15.可选的,所述基于非实物单机的类型模拟非实物单机对应的业务的步骤包括:
16.若非实物单机为主动控制单机,则模拟所述主动控制单机在特定时序或特定状态
下发送特定消息,所述特定状态包括收到控件激励的状态或者收到预设变量值触发的状态;
17.若非实物单机为被动执行单机,则模拟所述被动执行单机在接收到控制消息后执行相应动作,并把反馈信息传送至can总线消息监测通道上;
18.若非实物单机为单向输出单机,则模拟所述单向输出电机周期性地向can总线输出预设消息。
19.可选的,在所述获取软件系统测试界面控件触发的测试业务选项,并基于所述测试业务选项进行对应的测试的步骤之前包括:
20.建立软件测试业务对应的消息协议族;
21.基于所述消息协议族配置软件测试业务对应的基础数据库;
22.对软件系统测试界面进行控件设置以及软件测试业务对应物理量的显示设置;
23.在对应编译环境下进行can消息触发事件与状态触发事件函数的预编译,其中,状态触发事件包括控件触发事件与定时器触发事件。
24.第二方面,本发明还提供一种软件系统测试装置,所述软件系统测试装置包括:
25.测试触发模块,用于获取软件系统测试界面控件触发的测试业务选项,并基于所述测试业务选项进行对应的测试;
26.获取模块,用于基于can消息触发事件或状态触发事件获取测试过程中的过程数据;
27.数据处理模块,用于对所述过程数据进行数据处理,得到数据处理结果;
28.显示模块,用于将软件系统测试界面窗口环境变量链接于所述数据处理结果,基于所述数据处理结果显示各装备软件的功能测试结果与can接口测试结果。
29.可选的,所述软件系统测试装置还包括确定模块,用于:
30.确定运行各装备软件的节点单机是否均为实物单机;
31.若确定运行各装备软件的节点单机均为实物单机,则测试业务选项为对运行在实物单机上的所有软件进行系统测试;
32.若确定运行各装备软件的节点单机非均为实物单机,则测试业务选项为对运行在实物单机上的软件进行配置项测试。
33.可选的,所述测试触发模块,还具体用于:
34.若测试业务选项为对运行在实物单机上的软件进行配置项测试,则基于非实物单机的类型模拟非实物单机对应的业务,对运行在实物单机上的软件做配置项测试。
35.可选的,所述测试触发模块,还具体用于:
36.若非实物单机为主动控制单机,则模拟所述主动控制单机在特定时序或特定状态下发送特定消息,所述特定状态包括收到控件激励的状态或者收到预设变量值触发的状态;
37.若非实物单机为被动执行单机,则模拟所述被动执行单机在接收到控制消息后执行相应动作,并把反馈信息传送至can总线消息监测通道上;
38.若非实物单机为单向输出单机,则模拟所述单向输出电机周期性地向can总线输出预设消息。
39.可选的,所述软件系统测试装置还包括构建模块,用于:
40.建立软件测试业务对应的消息协议族;
41.基于所述消息协议族配置软件测试业务对应的基础数据库;
42.对软件系统测试界面进行控件设置以及软件测试业务对应物理量的显示设置;
43.在对应编译环境下进行can消息触发事件与状态触发事件函数的预编译,其中,状态触发事件包括控件触发事件与定时器触发事件。
44.第三方面,本发明还提供一种软件系统测试设备,所述软件系统测试设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的软件系统测试程序,其中所述软件系统测试程序被所述处理器执行时,实现如上述所述的软件系统测试方法的步骤。
45.第四方面,本发明还提供一种可读存储介质,所述可读存储介质上存储有软件系统测试程序,其中所述软件系统测试程序被处理器执行时,实现如上述所述的软件系统测试方法的步骤。
46.本发明提供一种软件系统测试方法、装置、设备及可读存储介质,软件系统测试方法包括:获取软件系统测试界面控件触发的测试业务选项,并基于所述测试业务选项进行对应的测试;基于can消息触发事件或状态触发事件获取测试过程中的过程数据;对所述过程数据进行数据处理,得到数据处理结果;将软件系统测试界面窗口环境变量链接于所述数据处理结果,基于所述数据处理结果显示各装备软件的功能测试结果与can接口测试结果。通过本发明可以保证测试充分性,实时在上位机上软件系统测试界面显示各装备软件的系统测试结果,提高了测试效率与测试质量,从而提升测试后的各装备软件的可靠性。
附图说明
47.图1为本发明实施例方案中涉及的软件系统测试设备的硬件结构示意图;
48.图2为本发明软件系统测试方法一实施例的流程示意图;
49.图3为本发明软件系统测试方法又一实施例的流程示意图;
50.图4为本发明软件系统测试装置一实施例的功能模块示意图。
51.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
52.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
53.第一方面,本发明实施例提供一种软件系统测试设备。
54.参照图1,图1为本发明实施例方案中涉及的软件系统测试设备的硬件结构示意图。本发明实施例中,软件系统测试设备可以包括处理器1001(例如中央处理器centralprocessingunit,cpu),通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信;用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard);网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真wireless-fidelity,wi-fi接口);存储器1005可以是高速随机存取存储器(randomaccessmemory,ram),也可以是稳定的存储器(non-volatile memory),例如磁盘存储器,存储器1005可选的还可以是独立于前述处理器1001的存储装置。本领域技术人员可以理解,图1中示出的硬件结构并不构成对本发明的限定,可以包括比图示更多或
更少的部件,或者组合某些部件,或者不同的部件布置。
55.继续参照图1,图1中作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及软件系统测试程序。其中,处理器1001可以调用存储器1005中存储的软件系统测试程序,并执行本发明实施例提供的软件系统测试方法。
56.第二方面,由于当前基于can总线通讯的软件系统测试方法需要软件测试人员结合调试测试工具,逐一设计测试用例,并开展测试用例执行等相关动作,测试分析效率低,测试结果不直观且实际测试过程中由于测试经验碎片化的存在于各试验报告中而难以保证软件系统测试的充分性。因此本发明使用便携式计算机或者pc机作为上位机,在上位机上采用配置好的canoe软件。上位机再通过canoe硬件连接于各节点设备的can总线上,通过canoe硬件来对can总线上的传输的can数据进行收发与监测,对运行在各节点设备上的参与测试的各装备软件进行软件系统测试,并对应显示软件系统测试的测试结果,实现对整个测试过程中总线上消息进行接收、处理并结果控制曲线以及反馈曲线的可视化管理。其中,节点设备之间通过can总线连接,软件系统测试程序运行在上位机中。
57.在上述基础上,本发明实施例提供了一种软件系统测试方法。
58.参照图2,图2为本发明软件系统测试方法一实施例的流程示意图。
59.在本发明软件系统测试方法一实施例中,软件系统测试方法包括:
60.步骤s10,获取软件系统测试界面控件触发的测试业务选项,并基于所述测试业务选项进行对应的测试;
61.本实施例中,在进行软件系统测试时,首先获取测试人员在软件系统测试界面点击界面控件所触发的测试业务选项,其中,测试业务选项包括软件配置项测试以及软件系统测试。在确定测试业务选项后再进行对应的测试。
62.步骤s20,基于can消息触发事件或状态触发事件获取测试过程中的过程数据;
63.本实施例中,基于can消息触发事件或者状态触发事件获取测试过程中的过程数据,上述过程数据包括测试过程中对单机节点的软件配置项的功能测试和接口测试的控制物理量与反馈物理量。
64.步骤s30,对所述过程数据进行数据处理,得到数据处理结果;
65.本实施例中,对从测试过程中所获取的过程数据进行数据处理,可以得到数据处理结果,其中,数据处理结果对应单机节点上软件的功能项与接口项的测试结果。
66.步骤s40,将软件系统测试界面窗口环境变量链接于所述数据处理结果,基于所述数据处理结果显示各装备软件的功能测试结果与can接口测试结果。
67.本实施例中,获取数据处理结果,可以将软件系统测试界面窗口环境变量链接于所得的数据处理结果,从而在软件系统测试界面窗口显示各装备软件的功能和接口之间相互匹配性的测试结果。通过上述方式可以实时在上位机上软件系统测试界面显示各装备软件的系统测试结果,有效解决实装测试环境缺少系统测试工具,现有基于can总线通讯的软件系统测试方法,其测试效率低且测试质量不高的问题,从而保证测试充分性,提高测试效率与测试质量。
68.进一步,一实施例中,参照图3,在所述步骤s10之前包括:
69.步骤s01,确定运行各装备软件的节点单机是否均为实物单机;
70.步骤s02,若确定运行各装备软件的节点单机均为实物单机,则测试业务选项为对
运行在实物单机上的所有软件进行系统测试;
71.步骤s03,若确定运行各装备软件的节点单机非均为实物单机,则测试业务选项为对运行在实物单机上的软件进行配置项测试。
72.本实施例中,各参与测试的软件运行在节点设备上,该节点设备可以为真实设备单机,也可以为模拟单机。在确定测试业务选项过程中,需要确定运行各装备软件的节点单机是否均为实物单机。若确定均为实物单机,则软件系统测试工具在测试中可作为一个监控节点,对整个测试过程中总线上消息进行接收、处理并通过图形界面实时显示结果,从而对运行在实物单机上的各装备软件的功能和接口之间相互匹配性进行系统测试。若确定运行各装备软件的节点单机非均为实物单机,则测试业务选项为对运行在实物单机上的软件的配置项测试,因此应用场景很灵活。
73.其中,软件系统测试工具作为监控节点时的操作步骤为:对测试用例进行分析,提取出测试过程中涉及的物理量,在can总线协议中提取出物理量所涉及的消息并在数据库中进行配置;在执行系统流程测试过程中对数据进行处理,在收到特定消息后提取所需物理量,经过数据处理后对数据处理结果进行显示;对数据处理结果进行实时判读,显示实时结果与理论结果,为测试用例提供测试数据。
74.再进一步,一实施例中,所述基于所述测试业务选项进行对应的测试的步骤包括:
75.若测试业务选项为对运行在实物单机上的软件进行配置项测试,则基于非实物单机的类型模拟非实物单机对应的业务,对运行在实物单机上的软件做配置项测试。
76.本实施例中,若确定测试业务选项为对运行在实物单机上的软件进行配置项测试,则需要基于非实物单机的类型模拟非实物单机对应的业务,对运行在实物单机上的软件做配置项测试。
77.更进一步,一实施例中,所述基于非实物单机的类型模拟非实物单机对应的业务的步骤包括:
78.若非实物单机为主动控制单机,则模拟所述主动控制单机在特定时序或特定状态下发送特定消息,所述特定状态包括收到控件激励的状态或者收到预设变量值触发的状态;
79.若非实物单机为被动执行单机,则模拟所述被动执行单机在接收到控制消息后执行相应动作,并把反馈信息传送至can总线消息监测通道上;
80.若非实物单机为单向输出单机,则模拟所述单向输出电机周期性地向can总线输出预设消息。
81.本实施例中,由于不同非实物单机的类型所模拟的非实物单机对应的业务也不同,其中,非实物单机一般分为三种,一种非实物单机为主动控制单元,一种非实物单机为被动执行单机,一种非实物单机为单向输出电机。常见模拟业务有主动控制单机需要设定特定时序、特定状态发送特定消息,被动执行单机需要接收控制消息后执行相应动作并把反馈信息传送至总线监听通道上,单向输出单机需要周期性向can总线输出既定消息。
82.在模拟单机业务工作时,若非实物单机为主动控制单机,则模拟所述主动控制单机在特定时序或特定状态下发送特定消息,该特定状态包括收到控件激励的状态或者收到预设变量值触发的状态。例如模拟某单机1的业务,若需要模拟上电后状态是否正常,则需要模拟测试执行到特定时间、或者收到测试界面的控件激励、或者变量值触发后发送预设
消息。
83.在模拟单机业务工作时,若非实物单机为被动执行单机,则模拟所述被动执行单机在接收到控制消息后执行相应动作,并把反馈信息传送至can总线消息监测通道上。例如模拟某单机2的业务,需要模拟上电后状态是否正常,需要模拟收到控制信号后执行相应业务,并把反馈信号回送总线。
84.在模拟单机业务工作时,若非实物单机为单向输出单机,则模拟所述单向输出电机周期性地向can总线输出预设消息。例如例如模拟某单机3的业务,需要模拟上电后单机状态是否正常,需要模拟周期性消息发送。
85.进一步,一实施例中,在所述步骤s10之前包括:
86.建立软件测试业务对应的消息协议族;
87.基于所述消息协议族配置软件测试业务对应的基础数据库;
88.对软件系统测试界面进行控件设置以及软件测试业务对应物理量的显示设置;
89.在对应编译环境下进行can消息触发事件与状态触发事件函数的预编译,其中,状态触发事件包括控件触发事件与定时器触发事件。
90.本实施例中,在对运行在单机节点上的软件进行系统测试或者配置项测试的软件测试业务之前,会针对不同的软件测试业务建立其对应的can消息协议族。其中,基于上述can消息协议族进行通讯可以完成软件系统层面的功能测试和接口测试,保证协议中所有消息的覆盖能达到百分百。并通过canoe软件的candb++基于不同软件测试业务对应的can消息协议族来配置其对应的基础数据库,包括测试中涉及的单机节点、can总线消息、can信号、canoe软件系统测试界面窗口涉及到的环境变量等数据。其中,所建立的基础数据库对应以文件形式存储在canoe软件中,在进行具体的测试业务时会调取对应的数据库文件。
91.此外,本实施例方案利用canoe软件上的paneleditor将panel界面构建为航天系统中各装备软件的软件系统测试界面,对软件系统测试界面进行不同测试业务对应的控件设置以及物理量的显示设置。最后在对应的capl编程的编译环境下进行can消息触发事件与状态触发事件函数的预编译,其中,状态触发事件包括控件触发事件与定时器触发事件。测试人员在软件系统测试界面上可以点击对应的控件,基于控件触发事件向航天系统各装备软件输入对应控制物理量。并且在软件系统测试过程中,基于can消息触发事件也可以通过收到控制消息后执行相应的控制操作,或者基于状态触发事件也可以在控制中持续周期性地向can总线输出预先设置的特定消息。
92.本实施例中,提供一种软件系统测试方法包括:获取软件系统测试界面控件触发的测试业务选项,并基于所述测试业务选项进行对应的测试;基于can消息触发事件或状态触发事件获取测试过程中的过程数据;对所述过程数据进行数据处理,得到数据处理结果;将软件系统测试界面窗口环境变量链接于所述数据处理结果,基于所述数据处理结果显示各装备软件的功能测试结果与can接口测试结果。通过本发明可以保证测试充分性,实时在上位机上软件系统测试界面显示各装备软件的系统测试结果,提高了测试效率与测试质量,从而提升测试后的各装备软件的可靠性。
93.第三方面,本发明实施例还提供一种软件系统测试装置。
94.参照图4,软件系统测试装置一实施例的功能模块示意图。
95.本实施例中,所述软件系统测试装置包括:
96.测试触发模块10,用于获取软件系统测试界面控件触发的测试业务选项,并基于所述测试业务选项进行对应的测试;
97.获取模块20,用于基于can消息触发事件或状态触发事件获取测试过程中的过程数据;
98.数据处理模块30,用于对所述过程数据进行数据处理,得到数据处理结果;
99.显示模块40,用于将软件系统测试界面窗口环境变量链接于所述数据处理结果,基于所述数据处理结果显示各装备软件的功能测试结果与can接口测试结果。
100.进一步,一实施例中,所述软件系统测试装置还包括确定模块,用于:
101.确定运行各装备软件的节点单机是否均为实物单机;
102.若确定运行各装备软件的节点单机均为实物单机,则测试业务选项为对运行在实物单机上的所有软件进行系统测试;
103.若确定运行各装备软件的节点单机非均为实物单机,则测试业务选项为对运行在实物单机上的软件进行配置项测试。
104.进一步,一实施例中,所述测试触发模块10,还具体用于:
105.若测试业务选项为对运行在实物单机上的软件进行配置项测试,则基于非实物单机的类型模拟非实物单机对应的业务,对运行在实物单机上的软件做配置项测试。
106.进一步,一实施例中,所述测试触发模块10,还具体用于:
107.若非实物单机为主动控制单机,则模拟所述主动控制单机在特定时序或特定状态下发送特定消息,所述特定状态包括收到控件激励的状态或者收到预设变量值触发的状态;
108.若非实物单机为被动执行单机,则模拟所述被动执行单机在接收到控制消息后执行相应动作,并把反馈信息传送至can总线消息监测通道上;
109.若非实物单机为单向输出单机,则模拟所述单向输出电机周期性地向can总线输出预设消息。
110.进一步,一实施例中,所述软件系统测试装置还包括构建模块,用于:
111.建立软件测试业务对应的消息协议族;
112.基于所述消息协议族配置软件测试业务对应的基础数据库;
113.对软件系统测试界面进行控件设置以及软件测试业务对应物理量的显示设置;
114.在对应编译环境下进行can消息触发事件与状态触发事件函数的预编译,其中,状态触发事件包括控件触发事件与定时器触发事件。
115.其中,上述软件系统测试装置中各个模块的功能实现与上述软件系统测试方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。
116.第四方面,本发明实施例还提供一种可读存储介质。
117.本发明可读存储介质上存储有软件系统测试程序,其中所述软件系统测试程序被处理器执行时,实现如上述的软件系统测试方法的步骤。
118.其中,软件系统测试程序被执行时所实现的方法可参照本发明软件系统测试方法的各个实施例,此处不再赘述。
119.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而
且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
120.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
121.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备执行本发明各个实施例所述的方法。
122.以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1