本申请涉及软件测试,尤其涉及一种交互系统测试方法、装置、存储介质及计算机设备。
背景技术:
1、随着人工智能技术的飞速发展,对话式交互场景在各个领域得到了广泛应用。例如智能客服、智能导购、智能家居等等,对话式的交互系统正逐渐成为人们日常生活中不可或缺的一部分。但由于交互系统需要处理各种复杂的交互场景,需要确保交互流程的正确性和完整性,以为用户提供优质的服务体验。
2、然而,目前对交互系统的测试一般通过测试人员直接与交互系统进行互动来完成,这种测试方法难以全面覆盖交互系统的业务场景,并且测试效率较低。
技术实现思路
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、当确定所述交互系统的每个业务场景对应的各个节点之间的指向关系时,获取每个业务场景在所述交互系统中交互关系,并结合每个业务场景对应的各个节点之间的指向关系,生成所述交互系统的场景流程图。
30、第二方面,本申请提供了一种交互系统测试装置,所述装置包括:
31、流程图获取模块,用于确定待测试的交互系统,并获取所述交互系统的场景流程图;
32、消息确定模块,用于从预设的消息池中选取目标消息,并将所述目标消息发送至所述交互系统;
33、节点确定模块,用于获取所述交互系统对于所述目标消息的目标回复,并根据所述目标回复在所述场景流程图中确定目标节点;
34、支路确定模块,用于根据所述目标节点在所述场景流程图中确定测试支路;
35、支路测试模块,用于获取所述测试支路对应的各个节点的触发信息,并在所述交互系统中利用所述测试支路对应的各个节点的触发信息对所述测试支路进行测试,以及返回至从预设的消息池中选取目标消息的步骤继续执行,直至迭代次数达到预设阈值时,得到每次迭代中所确定的测试支路的测试结果。
36、第三方面,本申请提供了一种存储介质,所述存储介质中存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如上述任一项实施例所述交互系统测试方法的步骤。
37、第四方面,本申请提供了一种计算机设备,包括:一个或多个处理器,以及存储器;
38、所述存储器中存储有计算机可读指令,所述一个或多个处理器执行时所述计算机可读指令时,执行如上述任一项实施例所述交互系统测试方法的步骤。
39、从以上技术方案可以看出,本申请实施例具有以下优点:
40、本申请提供的交互系统测试方法、装置、存储介质及计算机设备,所述方法包括:获取交互系统的场景流程图,并从预设的消息池中选取目标消息,接着,将目标消息发送至交互系统,进而得到交互系统对于目标消息的目标回复,通过目标回复在场景流程图中确定目标节点。然后根据目标节点在场景流程图中确定测试支路,并获取测试支路对应的各个节点的触发信息,以在交互系统中利用测试支路对应的各个节点的触发信息对测试支路进行测试,当完成迭代时得到每次迭代中所确定的测试支路的测试结果。基于交互系统的场景流程图设置自动化测试流程,以对场景流程图中所涉及的测试支路进行测试,使得对交互系统的测试能够全面覆盖交互系统的业务场景,并且在测试过程中可以尽量减少人工测试的参与,从而提高交互系统测试的效率和质量。
1.一种交互系统测试方法,其特征在于,所述方法包括:
2.根据权利要求1所述的交互系统测试方法,其特征在于,所述根据所述目标节点在所述场景流程图中确定测试支路的步骤,包括:
3.根据权利要求2所述的交互系统测试方法,其特征在于,所述在所述目标节点对应的各个流转节点中确定测试节点的步骤,包括:
4.根据权利要求2所述的交互系统测试方法,其特征在于,所述在所述目标节点对应的各个流转节点中确定测试节点的步骤,包括:
5.根据权利要求1所述的交互系统测试方法,其特征在于,所述在所述交互系统中利用所述测试支路对应的各个节点的触发信息对所述测试支路进行测试的步骤,包括:
6.根据权利要求1所述的交互系统测试方法,其特征在于,所述根据所述目标回复在所述场景流程图中确定目标节点的步骤,包括:
7.根据权利要求1至6任一项所述的交互系统测试方法,其特征在于,所述场景流程图的创建过程,包括:
8.一种交互系统测试装置,其特征在于,所述装置包括:
9.一种存储介质,其特征在于:所述存储介质中存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至7中任一项所述交互系统测试方法的步骤。
10.一种计算机设备,其特征在于,包括:一个或多个处理器,以及存储器;
