本公开涉及计算机,具体而言,涉及一种页面测试方法、装置、计算机设备和存储介质。
背景技术:
1、传统的用户界面(user interface,ui)自动化测试的常规方式是通过自动化测试框架识别页面控件,而这种自动化识别框架的结果输出往往依赖于代码层级中针对控件的代码命名,一旦这些控件名称混淆,就很难进行有效的控件定位,从而增加了测试难度。
技术实现思路
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、所述测试模块,用于基于所述各个页面控件的类型信息和所述位置信息,确定所述各个页面控件中,与所述测试用例中指示的目标操作页面控件的类型信息相匹配的目标页面控件,并将该目标页面控件的位置信息作为所述目标位置信息。
41、一种可选的实施方式中,任一所述页面控件的位置信息包括指示所述页面控件在页面中的位置范围的信息;
42、所述测试模块,用于从所述目标位置信息指示的目标位置范围中选择任一位置作为目标操作位置,按照所述目标操作位置对所述目标操作页面控件进行测试触发操作。
43、第三方面,本公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第二方面,或第二方面中任一种可能的页面测试方法的步骤。
44、第四方面,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第二方面,或第二方面中任一种可能的页面测试方法的步骤。
45、关于上述页面测试装置、计算机设备和存储介质的效果描述参见上述页面测试方法的说明,这里不再赘述。
46、本公开实施例提供的页面测试方法、装置、计算机设备和存储介质,其中,页面测试方法包括接收针对展示页面的测试请求,调用测试用例,截取展示页面的第一页面图像;调用目标神经网络模型对第一页面图像进行识别,得到第一页面图像中的页面控件信息;页面控件信息包括展示页面中各页面控件的位置信息;基于各页面控件的位置信息,确定测试用例指示的目标操作页面控件的目标位置信息,并按照目标位置信息对目标操作页面控件进行测试触发操作。
47、也即,本公开实施例通过截取展示页面的第一页面图像,调用目标神经网络模型对第一页面图像进行识别,能够准确地识别出展示页面中的各页面控件,也即能够准确地识别出实际测试场景下,展示页面中展示的各页面控件,进而得到各页面控件在第一页面图像中的精准的位置信息,之后,按照较为精准的测试用例指示的目标操作页面控件的目标位置信息对目标操作页面控件进行测试触发操作,能够高效实现页面测试。
48、为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。