自动化测试方法、装置、计算机设备和可读存储介质与流程

文档序号:36309471发布日期:2023-12-07 11:29阅读:24来源:国知局
自动化测试方法与流程

本发明涉及自动化测试,具体而言,涉及一种自动化测试方法、一种自动化测试装置、一种计算机设备、一种可读存储介质。


背景技术:

1、目前,随着科技不断发展,很多家电设备会接入到手机应用程序中,从而实现智能控制,但在实际测试时,存在一定的设备成本和人工成本,需要手动操作应用程序和设备,相关技术中,存在一些自动化测试的使用场景,但仅能测试应用程序在运行过程中的稳定性,若进行功能检测,需单独提供测试用例,测试操作较为繁琐。


技术实现思路

1、本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。

2、有鉴于此,本发明第一方面的实施例提供了一种自动化测试方法。

3、本发明第二方面的实施例提供了一种自动化测试装置。

4、本发明第三方面的实施例提供了一种计算机设备。

5、本发明第四方面的实施例提供了一种可读存储介质。

6、为了实现上述目的,本发明第一方面的实施例提供了一种自动化测试方法,包括:确定对应于至少一个终端设备的设备参数;根据每个终端设备的设备参数启动设备模拟器,以在应用程序上加载至少一个对应于每个终端设备的插件,并获得每个插件的所有实际测试图片;根据实际测试图片确定对应于至少一个终端设备的测试结果。

7、根据本发明提出的自动化测试方法,先确定要测试的终端设备的相关参数,如设备名称、型号、状态等,通过上述设备参数,启动一个设备模拟器。这个模拟器会模拟真实设备的行为。在此基础上,可在应用程序中加载一个或多个与终端设备对应的插件,这些插件应该与终端设备的功能相对应。从而使得应用程序能够与这些虚拟设备进行交互,例如智能控制等操作,提高测试的并行执行能力,加快测试过程,节省时间和资源。针对每个加载的插件,执行一系列操作,这些操作模拟了用户与家电设备的交互。在每次操作后,截取当前屏幕的截图。这些截图是实际测试图片,捕捉了应用程序在模拟设备上的显示效果。通过分析实际测试图片,确定与至少一个终端设备相对应的测试结果。比较每个实际测试图片与预期的结果,看是否一致。例如,可以检查图像中的ui(即user interface,用户界面)元素是否正确显示,按钮是否可以点击等。

8、可以理解,这种自动化测试方法的目标是验证应用程序在模拟设备上的行为是否与真实设备上的预期行为一致。通过模拟真实的用户交互,捕捉截图并进行比较,可以快速检测出潜在的问题并进行修复,从而提高应用程序的质量和稳定性。

9、需要强调的是,本方案可以仅针对一个终端设备进行自动化测试,还可同时加载多个终端设备,通过并行或串行的方式完成测试。

10、其中,通过本方案,可以有效地自动化测试应用程序中与终端设备交互的功能,并快速判断应用程序的稳定性和准确性。这样的测试方法可以提高测试效率和减少测试成本,同时确保应用程序的质量和用户体验。

11、需要补充的是,还可通过获取基准测试图片,将其用作参考标准,帮助评估后续测试结果的准确性和稳定性。

12、在确定设备参数时,可以根据不同参数生成多个测试用例,覆盖更多设备情况,提高测试的全面性和可扩展性。

13、在一些技术方案中,可选地,获得每个插件的所有实际测试图片,具体包括:进入与终端设备对应的插件界面;遍历插件界面中的所有可视元素,且执行插件界面中的所有可执行事件;确定与插件界面对应的多个实际测试图片。

14、在该技术方案中,在应用程序中进入与终端设备对应的插件界面,以便进行后续的自动化测试,提高测试的灵活性和可定制性,适应不同测试场景和需求。对插件界面进行遍历,查找所有可视元素,包括按钮、文本框、图标等,以便后续执行点击事件等交互操作,可以发现更多隐藏的交互问题和潜在的bug,增强测试的发现能力。自动执行插件界面中的点击事件,即模拟用户点击按钮、输入文本等交互操作,以测试插件界面的功能是否正常,增加测试的全面性和真实性,更接近实际用户操作。在执行插件界面中的点击事件时,自动截图并保存实际测试图片,生成更全面和详细的测试结果,有助于更准确地判断测试效果。

15、在一些技术方案中,可选地,还包括:获取应用程序中与至少一个插件对应的基准测试图片;根据实际测试图片确定对应于至少一个终端设备的测试结果,具体包括:根据实际测试图片和基准测试图片的对比确定对应于至少一个终端设备的测试结果。

16、在该技术方案中,在测试前,获取应用程序的基准测试图片,这些图片是应用程序在稳定版本下的截图,作为后续测试结果的对比基准。在确定测试结果时,会利用实际测试图片与此前获取的基准测试图片进行对比,判断测试结果是否符合预期,即应用程序在添加终端设备后的功能是否正常,更精确地判断测试结果,减少误判,提高自动化测试的可靠性。

17、在一些技术方案中,可选地,根据设备参数启动设备模拟器,以在应用程序上加载至少一个对应于终端设备的插件,具体包括:根据设备参数生成对应的加密配网信息;根据加密配网信息进行解码操作,以实现配网;在应用程序中添加完成配网的终端设备的插件。

18、在该技术方案中,在通过模拟器进行设备添加时,可直接根据提前获取的设备参数,先生成加密配网信息,以便于后续根据加密配网信息进行解码操作,增强配网过程的安全性和可靠性,确保设备能够正确接入应用程序。在完成配网后,在应用程序中即可显示出对应的终端设备,以便于后续进行测试操作。

19、其中,可以增强设备模拟器的功能,使其更加灵活和全面地模拟终端设备的接入过程。同时,加强配网过程的安全性和可靠性,确保设备接入应用程序后能够正常运行。这将有助于提高自动化测试的全面性和准确性,为应用程序的稳定性和功能性提供更好的保障。

20、关于如何使用设备参数启动设备模拟器并加载插件的详细说明,根据此前的设备参数,可能包括设备名称、品类、序列号等,生成相应的加密配网信息。这些信息将用于将模拟器配置为模拟真实设备。

21、设备模拟器接收到加密配网信息后,需要对其进行解码操作,以便提取出其中的配置信息。解码过程可能涉及解密算法和密钥等。

22、解码后的配置信息将用于实现配网操作。这可能包括连接到模拟网络、模拟设备与应用程序之间的通信,以及在应用程序上设置模拟设备的配网状态。

23、一旦模拟设备成功完成配网并准备好,根据设备的信息看在应用程序中加载适当的插件。这些插件应该与所模拟的真实设备相对应,并模拟设备的功能和界面。

24、加载好插件后,将其添加到应用程序的相应位置,使用户可以与模拟设备进行交互。例如在应用程序的用户界面上添加设备图标、菜单项或其他相关元素。进一步地,加密配网信息可包括二维码信息、条形码信息、图片信息等,本方案可支持多种配网方式,如wi-fi配网、蓝牙配网等,根据设备模拟器的特性,实现多种不同的配网信息生成方式。

25、在一些技术方案中,可选地,加密配网信息为二维码,根据加密配网信息进行解码操作,具体包括:调用扫码工具对加密配网信息进行识别。

26、在该技术方案中,使用设备参数生成相应的加密配网信息,并将其转换为二维码的形式。这个二维码包含了加密后的配置信息。一旦应用程序启动并准备好进行配网,用户或测试系统可以使用扫码工具对这个二维码进行扫描。扫码工具将能够识别二维码并将其转换回原始的加密配网信息。

27、在二维码中的加密配网信息被识别并解码的情况下,应用程序可以使用解码后的配置信息来进行模拟设备的配网操作。

28、通过使用扫码工具,可以方便地将加密配网信息传递给应用程序,并且应用程序可以根据解码后的信息来模拟设备的配网过程。这样可以保证模拟器的配置与真实设备的配置相匹配,从而实现更真实的自动化测试环境。

29、在一些技术方案中,可选地,进入与终端设备对应的插件界面,具体包括:在应用程序的界面中显示插件界面;触发插件界面的进入指令,显示与进入指令对应的子界面。

30、在该技术方案中,在进入到插件界面时,先在应用程序中显示对应的插件界面,再通过点击该插件界面以进入到对应的下一界面中,即触发插件界面的进入指令,显示与进入指令对应的子界面,提供更全面的交互模拟,确保插件界面在自动化测试中可以进行更多样化的测试场景。

31、其中,进入指令包括但不限于点击、拖拽、滑动等操作。

32、可以理解,本方案可以增强应用程序界面的显示效果和交互模拟能力,确保自动化测试可以准确模拟用户操作,进入和测试插件界面的各种子界面。这将有助于提高测试的全面性和准确性,发现更多潜在的缺陷或问题,为应用程序的功能性和稳定性提供更好的保障。

33、在一些技术方案中,可选地,遍历插件界面中的所有可视元素,且执行插件界面中的点击事件,具体包括:确定插件界面的显示尺寸和可显示区域;在显示尺寸大于可显示区域的情况下,对插件界面中的至少一个子界面进行滚动处理,确定子界面中可跳转另一子界面的可执行事件;或在显示尺寸小于或等于可显示区域的情况下,确定子界面中可跳转另一子界面的可执行事件;执行可执行事件。

34、在该技术方案中,根据插件界面的大小会采用不同的界面显示方式,具体地,确定插件界面的显示尺寸和可显示区域,从而确保测试在不同设备上都能正确获取插件界面的尺寸信息,以适配不同设备的测试需求。在显示尺寸大于可显示区域的情况下,对一个或多个子界面进行滚动处理,确定子界面中可跳转另一子界面的可执行事件,提高测试的全面性和准确性,确保测试可以涵盖所有可跳转的子界面,包括那些在默认可显示区域之外的部分。需要补充的是,本步骤中可对插件界面的滚动处理进行优化,考虑使用不同滚动策略和算法,确保所有可跳转的子界面都能被测试到。在显示尺寸小于或等于可显示区域的情况下,确定子界面中可跳转另一子界面的可执行事件,在限制显示区域的情况下,增加测试的范围,尽可能涵盖所有可跳转的子界面。可选地,对于显示尺寸小于或等于可显示区域的情况,考虑使用模拟用户滑动手势的方式,模拟滑动以显示隐藏的部分,并测试隐藏部分中的可跳转子界面。

35、最终,无论插件界面的大小,均可确定出界面中的可执行事件,以便于后续的测试对比,可以增强自动化测试对插件界面的遍历和可执行操作能力,确保测试可以涵盖更多测试场景,并在不同设备上实现更准确的测试覆盖,从而提高测试的全面性和准确性。

36、在一些技术方案中,可选地,确定与插件界面对应的多个实际测试图片,具体包括:对每个子界面进行截图操作,以生成实际测试图片;其中,由跳转到任一子界面后直至执行截图之间的截图间隔大于预设间隔。

37、在该技术方案中,可生成高质量和完整的实际测试图片,确保测试结果准确可靠。进一步地,可以增加对截图质量和分辨率的设置,确保生成的实际测试图片具有更高的清晰度和准确性。同时,对于一些需要长时间滚动或复杂操作才能显示完整内容的子界面,可以考虑分段截图,并将分段的截图拼接成完整的子界面图片。

38、可以理解,通过灵活设置截图间隔,根据实际测试需要和设备性能调整截图的时间间隔。同时,可以增加多样性的间隔设置,例如随机间隔、固定间隔和逐步递增的间隔,以模拟真实用户操作的多样性。确保生成的实际测试图片反映真实用户的操作和浏览习惯,提高测试的真实性和可靠性。

39、通过以上方案,可以进一步优化自动化测试系统的截图功能,确保生成的实际测试图片高质量、准确、多样,并且符合真实用户操作的模式。这将有助于提高测试结果的可靠性和全面性,从而更有效地评估应用程序的功能和性能。

40、在一些技术方案中,可选地,遍历所述插件界面中的所有可视元素,且执行所述插件界面中的所有可执行事件,具体包括:确定所述插件界面中的首页面事件;确定每个所述首页面事件对应的子界面;在完成一个所述首页面事件对应的子界面中的所有可执行事件的情况下,返回所述插件页面,完成另一所述首页面事件对应的子界面中的所有可执行事件,直至所有的首页面事件全部完成执行。

41、在该技术方案中,首先,需要确定插件界面中的首页面事件,这些事件可能是用户界面上的点击、拖拽、输入等操作。对于每个首页面事件,可能会导致界面的切换或子界面的展开。本方案需要识别出这些子界面,并确定它们的可执行事件。对于每个首页面事件,找到与之对应的子界面。然后,在完成一个子界面中的所有可执行事件后,返回到插件页面,继续执行另一个首页面事件对应的子界面中的事件。这个过程将一直持续,直到所有的首页面事件及其对应的子界面事件都完成执行。通过这个步骤,可以模拟用户在插件界面上的交互操作,包括点击不同的元素,切换子界面等。这样可以全面地测试插件在各种情况下的交互和反应。

42、在一些技术方案中,可选地,根据所述实际测试图片和所述基准测试图片的对比确定对应于至少一个所述终端设备的测试结果,具体包括:确定对应于同一插件界面中子界面的实际测试图片和基准测试图片;根据实际测试图片和基准测试图片的相似度确定子界面的子测试结果;根据所有子界面的子测试结果确定对应于应用程序的测试结果。

43、在该技术方案中,在确定测试是否合格时,需要先确定对应于同一插件界面中子界面的实际测试图片和基准测试图片,确保对比的实际测试图片和基准测试图片来自于相同的子界面,避免误判和混淆,提高测试结果的准确性。根据二者的相似度确定子界面的子测试结果,通过相似度度量,判断实际测试图片和基准测试图片之间的相似性,从而确定子界面的子测试结果,反映子界面是否符合预期功能。通过综合所有子界面的测试结果,得出对应于应用程序的整体测试结果,准确评估应用程序功能的稳定性和正确性。

44、需要补充的是,在确定对应于同一子界面时,可以采用图像匹配算法,如特征点匹配、模板匹配等,来确定实际测试图片和基准测试图片之间的对应关系。这样可以确保在测试过程中,正确匹配相同的子界面,从而准确比对测试结果。相似度的获取可以采用图像匹配算法,如特征点匹配、模板匹配等,来确定实际测试图片和基准测试图片之间的对应关系。这样可以确保在测试过程中,正确匹配相同的子界面,从而准确比对测试结果。最终,可以根据实际测试图片和基准测试图片的相似度结果,采用投票或权重汇总的方法,综合得出整个插件界面的测试结果。也可以根据不同子界面的重要性,设置不同的权重,以更准确地评估整体测试结果。

45、本发明第二方面的实施例提供了一种自动化测试装置,包括:参数确定模块,用于确定对应于至少一个终端设备的设备参数;添加模块,用于根据所述设备参数启动设备模拟器,以在应用程序上加载至少一个对应于所述终端设备的插件;图片测试模块,用于确定每个所述插件的所有实际测试图片;结果生成模块,用于根据所述实际测试图片确定对应于至少一个所述终端设备的测试结果。

46、根据本发明提出的自动化测试装置,主要包括参数确定模块、添加模块、图片测试模块和结果生成模块。

47、先确定要测试的终端设备的相关参数,如设备名称、型号、状态等,通过上述设备参数,启动一个设备模拟器。这个模拟器会模拟真实设备的行为。在此基础上,可在应用程序中加载一个或多个与终端设备对应的插件,这些插件应该与终端设备的功能相对应。从而使得应用程序能够与这些虚拟设备进行交互,例如智能控制等操作,提高测试的并行执行能力,加快测试过程,节省时间和资源。针对每个加载的插件,执行一系列操作,这些操作模拟了用户与家电设备的交互。在每次操作后,截取当前屏幕的截图。这些截图是实际测试图片,捕捉了应用程序在模拟设备上的显示效果。通过分析实际测试图片,确定与至少一个终端设备相对应的测试结果。比较每个实际测试图片与预期的结果,看是否一致。例如,可以检查图像中的ui元素是否正确显示,按钮是否可以点击等。

48、可以理解,这种自动化测试方法的目标是验证应用程序在模拟设备上的行为是否与真实设备上的预期行为一致。通过模拟真实的用户交互,捕捉截图并进行比较,可以快速检测出潜在的问题并进行修复,从而提高应用程序的质量和稳定性。

49、本发明第三方面的实施例提供了一种计算机设备,该计算机设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序或指令,程序或指令被处理器执行时实现如第一方面的方法的步骤。

50、本发明第四方面的实施例提供了一种可读存储介质,可读存储介质上存储程序或指令,程序或指令被处理器执行时实现如第一方面的方法的步骤。

51、本发明的附加方面和优点将在下面的描述部分中变得明显,或通过本发明的实践了解到。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1