CN116453136A - 场景设计方案测试方法、装置、计算机设备及存储介质 - Google Patents

场景设计方案测试方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN116453136A
CN116453136A CN202310362468.4A CN202310362468A CN116453136A CN 116453136 A CN116453136 A CN 116453136A CN 202310362468 A CN202310362468 A CN 202310362468A CN 116453136 A CN116453136 A CN 116453136A
Authority
CN
China
Prior art keywords
text
picture
preset operation
target
screenshot
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310362468.4A
Other languages
English (en)
Inventor
梁自升
赵悦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Ruizhu Intelligent Technology Co ltd
Original Assignee
Guangdong Ruizhu Intelligent Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong Ruizhu Intelligent Technology Co ltd filed Critical Guangdong Ruizhu Intelligent Technology Co ltd
Priority to CN202310362468.4A priority Critical patent/CN116453136A/zh
Publication of CN116453136A publication Critical patent/CN116453136A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19173Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/15Cutting or merging image elements, e.g. region growing, watershed or clustering-based techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19147Obtaining sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Character Discrimination (AREA)

Abstract

本发明公开了一种场景设计方案测试方法、装置、计算机设备及存储介质,所述方法包括:获取目标视频;基于所述目标视频对指定画面进行截图,得到所述指定画面对应的截图图片;对所述截图图片进行文字识别,得到由所述截图图片中的文本字符组成的目标文本字符串;根据所述目标文本字符串与预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果。由此解决在针对基于场景设计方案生成的动态视频进行测试的过程中,画面的预期结果无法判断的问题。

Description

场景设计方案测试方法、装置、计算机设备及存储介质
技术领域
本发明涉及自动化测试技术领域,尤其涉及一种场景设计方案测试方法、装置、计算机设备及存储介质。
背景技术
智能设备在家居、办公、商场等场所中得到了广泛的应用,能够让使用者得到便捷、安全、智能的体验。针对智能设备设计的场景设计方案能够基于实际的场景需求,生成相应的视频以展示智能设备可实现的功能以及动态效果。为了确保场景设计方案的执行情况的准确性和完整性,需要测试基于场景设计方案生成的视频是否符合预期。
相关技术中,采用元素抓取的方式对待测试对象的页面中的元素进行提取,以用于测试待测试对象的页面是否符合预期。然而,采用元素抓取的方式无法提取视频中的画面的元素,导致画面的预期结果无法判断。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的第一个目的在于提出一种场景设计方案测试方法,解决在针对基于场景设计方案生成的动态视频进行测试的过程中,画面的预期结果无法判断的问题。
本发明的第二个目的在于提出一种场景设计方案测试装置。
本发明的第三个目的在于提出一种计算机设备。
本发明的第四个目的在于提出一种计算机可读存储介质。
为达到上述目的,本发明第一方面实施方式提出了一种场景设计方案测试方法,所述方法包括:获取目标视频;其中,所述目标视频用于展示智能设备执行所述场景设计方案中的预设操作的过程;若所述智能设备执行所述预设操作,所述目标视频中的指定画面中显示用于描述所述预设操作的执行情况的预设操作文本;基于所述目标视频对所述指定画面进行截图,得到所述指定画面对应的截图图片;对所述截图图片进行文字识别,得到由所述截图图片中的文本字符组成的目标文本字符串;根据所述目标文本字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果。
根据本发明的一个实施方式,所述根据所述目标文本字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果,包括:若所述目标文本字符串包含有所述预设操作文本,确定所述场景设计方案的执行情况对应的测试结果为测试通过。
根据本发明的一个实施方式,所述根据所述目标文本字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果,包括:若所述目标文本字符串不包含有所述预设操作文本,确定所述场景设计方案的执行情况对应的测试结果为测试不通过。
根据本发明的一个实施方式,所述基于所述目标视频对所述指定画面进行截图,得到所述指定画面对应的截图图片,包括:按照预设时刻对所述指定画面进行截图,得到所述指定画面对应的截图图片。
根据本发明的一个实施方式,所述指定画面的数量为多个;所述对所述截图图片进行文字识别,得到由所述截图图片中的文本字符组成的目标文本字符串,包括:对任一指定画面对应的截图图片进行文字识别,得到由所述任一指定画面对应的截图图片中的文本字符组成的目标文本字符串。
根据本发明的一个实施方式,所述根据所述目标文本字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果之前,所述场景设计方案测试还包括:将多个所述目标文本字符串进行拼接,得到目标拼接字符串;所述根据所述目标文本字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果,包括:根据所述目标拼接字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果。
根据本发明的一个实施方式,所述场景设计方案包括办公场景设计方案、家居场景设计方案、商场场景设计方案中的至少一个;所述预设操作用于指示所述智能设备在预设时间执行相应的预设动作。
为达到上述目的,本发明第二方面实施方式提出了一种场景设计方案测试装置,所述装置包括:视频获取模块,用于获取目标视频;其中,所述目标视频用于展示智能设备执行所述场景设计方案中的预设操作的过程;若所述智能设备执行所述预设操作,所述目标视频中的指定画面中显示用于描述所述预设操作的执行情况的预设操作文本;画面截图模块,用于基于所述目标视频对所述指定画面进行截图,获取所述指定画面对应的截图图片;文字识别模块,用于对所述截图图片进行文字识别,得到由所述截图图片中的文本字符组成的目标文本字符串;文本比较模块,用于根据所述目标文本字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果。
为达到上述目的,本发明第三方面实施方式提出了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现前述任一项实施方式所述的场景设计方案测试方法的步骤。
为达到上述目的,本发明第四方面实施方式提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述任一项实施方式所述的场景设计方案测试方法的步骤。
根据本发明提供的多个实施方式,针对基于场景设计方案展示的动态视频,通过对视频中的指定画面进行截图,并对得到的截图图片进行文字识别,以用于测试指定画面是否符合预期,从而测试视频是否符合预期,进一步能够确定场景设计方案的执行情况。由此,解决在针对基于场景设计方案生成的动态视频进行测试的过程中,画面的预期结果无法判断的问题,提高场景设计方案的测试结果的准确性。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1a为根据本说明书一个实施方式提供的场景设计方案测试方法的流程示意图。
图1b为根据本说明书一个实施方式提供的场景设计方案测试方法的应用场景示意图。
图1c为根据本说明书一个实施方式提供的截图图片示意图。
图1d为根据本说明书一个实施方式提供的截图图片示意图。
图1e为根据本说明书一个实施方式提供的场景设计方案测试方法的流程示意图。
图2a为根据本说明书一个实施方式提供的场景设计方案测试方法的应用场景示意图。
图2b为根据本说明书一个实施方式提供的截图图片示意图。
图3a为根据本说明书一个实施方式提供的截图流程示意图。
图3b为根据本说明书一个实施方式提供的文字识别流程示意图。
图3c为根据本说明书一个实施方式提供的目标文本字符串的结构示意图。
图4a为根据本说明书一个实施方式提供的目标拼接字符串与预设操作文本的比较流程示意图。
图4b为根据本说明书一个实施方式提供的测试结果报告的示意图。
图5为根据本说明书一个实施方式提供的场景设计方案测试装置的结构框图。
图6为根据本说明书一个实施方式提供的计算机设备的结构框图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
随着科技水平和生活水平的不断提高,智能设备在家居、办公、商场等场所中得到了广泛的应用,能够让使用者得到便捷、安全、智能的体验。针对智能设备设计的场景设计方案是搭建智能场景的基础。场景设计方案能够基于实际的场景需求,为场所中各个位置的智能设备设定在预设时间执行的预设动作,使各个智能设备能够根据设定的预设时间和对应的预设动作展示对应的动态效果,并生成动态视频,使得通过动态视频能够向用户呈现出完整的场景设计方案。若智能设备在预设时间执行了正确的预设动作,动态视频中会展示出相应的文本内容,则视频是符合预期的,从而进一步表明场景设计方案的执行情况是符合预期的;若智能设备没有在预设时间执行预设动作,动态视频无法展示正确的动态效果,即视频中不会展示出相应的文本内容,则动态视频是不符合预期的,从而进一步表明场景设计方案的执行情况是不符合预期的。为了确保场景设计方案的执行情况的准确性和完整性,需要对场景设计方案进行测试。需要对基于该场景设计方案展示的动态视频的指定画面中的文本内容进行识别和提取,并通过判断提取出的文本内容是否符合预期,以测试该视频中的指定画面是否为预期的显示画面,从而确定该场景设计方案的执行情况是否准确和完整。
通常在对应用软件APP或WEB应用程序进行自动化测试的过程中,需要对应用软件APP或WEB应用程序的待测试页面是否显示了预设文本进行判断,并在判断待测试页面显示了预设文本的情况下才能进行后续的操作。如果不对待测试页面是否显示了预设文本进行判断,则应用软件APP或WEB应用程序的页面可能没有正常加载,应用软件APP或WEB应用程序的自动化会失败。相关技术中,当需要判断应用软件APP的待测试页面或者WEB应用程序的待测试页面中是否显示了预设文本以对待测试页面进行测试时,通常采用页面元素抓取的方式对待测试页面中的文本进行识别和提取。例如,利用自动化测试工具Appium读取应用软件APP的待测试页面或者WEB应用程序的待测试页面的html文件,通过获取html文件中的元素属性或者通过DOM(Document Object Model,文档对象模型)搜索页面元素(或者标签)的方式提取出待测试页面中的文本。
然而,一方面,对于一些没有包含在html文件的页面元素中的文本,是无法通过上述方式提取得到的。例如,iOS页面中显示有预设文本,但实际上该预设文本没有包含在该页面的html文件的页面元素中,通过上述抓取页面元素的方式无法提取到该预设文本。另一方面,若待测试页面中包含有图片,则图片中的文本无法通过上述抓取页面元素的方式进行提取。因此,在上述情况下,若无法提取得到待测试页面中的对应文本,则难以根据提取到的文本判断是否可以基于待测试页面进行下一步操作,或者难以根据提取到的文本进行操作结果断言。
相关技术中的页面元素抓取方法无法适用于针对基于场景设计方案生成的动态视频的测试。为了解决在视频的自动化测试过程中对视频中画面的预期结果无法判断的问题,有必要提出一种场景设计方案测试方法、装置、计算机设备及存储介质。在智能设备执行场景设计方案中的预设操作后,基于场景设计方案生成的动态视频中的指定画面会显示用于描述预设操作的执行情况的预设操作文本的前提下,通过对指定画面进行截图,并对得到的截图图片进行文字识别,以得到由截图图片中的文本字符组成的文本字符串。将得到的文本字符串与预设操作文本进行比较,以测试指定画面是否符合预期,从而测试视频是否符合预期,进一步可以确定场景设计方案的执行情况对应的测试结果是否为测试通过,即场景设计方案的执行情况是否符合预期。由此,在自动化测试过程中通过元素抓取的方式提取不到指定画面中的文本的情况下,先截取图片,再提取图片中的文本,便可以判断指定画面是否显示了预设文本,以解决在针对基于场景设计方案生成的动态视频进行测试的过程中,视频中画面的预期结果无法判断的问题,提高场景设计方案的测试结果的准确性。
本说明书实施方式提供一种场景设计方案测试方法,参考图1a所示,该场景设计方案测试方法可以包括以下步骤。
S110、获取目标视频;其中,目标视频用于展示智能设备执行场景设计方案中的预设操作的过程;若智能设备执行预设操作,目标视频中的指定画面中显示用于描述预设操作的执行情况的预设操作文本。
其中,目标视频为需要测试的视频,是基于需要测试的场景设计方案生成的动态视频。指定画面可以是基于场景设计方案中的预设操作事先指定的画面。预设操作的执行情况可以包括智能设备执行预设操作或者智能设备未执行预设操作。
具体地,在场景设计方案中,可以预先设置好对应的场景中的智能设备需要执行的预设操作,并可以指定智能设备执行预设操作后显示的预设操作文本。场景设计方案开始执行后,根据智能设备执行场景设计方案中相应的预设操作的过程,可以生成相应的视频,即为目标视频,用于展示场景中的智能设备执行预设操作后可以实现的功能以及动态效果等。若智能设备执行了场景设计方案中相应的预设操作,则在目标视频的指定画面中会显示有对应的预设操作文本,用于描述智能设备已执行了对应的预设操作;若智能设备未执行场景设计方案中相应的预设操作,则在目标视频的指定画面中不会显示对应的预设操作文本,以表明智能设备未执行对应的预设操作。
示例性地,以家居场景设计方案为例,场景中包括有空调设备和自动窗帘设备,空调设备当前状态为关闭,自动窗帘设备当前状态为打开。根据场景设计方案,设置场景开始执行时空调设备执行空调打开操作,自动窗帘设备执行窗帘关闭操作。假设指定空调设备执行预设的空调打开操作后,在生成的视频的第1s至第2s的画面中显示对应的预设操作文本“空调打开”,以及指定自动窗帘设备执行预设的窗帘关闭操作后,在生成的视频的第2s至第3s的画面中显示对应的预设操作文本“窗帘关闭”。因此,指定画面为生成的视频的第1s至第2s的画面以及第2s至第3s的画面。
若空调设备执行了预设的空调打开操作,则在获取到的目标视频中,第1s至第2s的画面中显示有对应的预设操作文本“空调打开”;若空调设备未执行预设的空调打开操作,则在获取到的目标视频中,第1s至第2s的画面中不显示对应的预设操作文本“空调打开”。若自动窗帘设备执行了预设的窗帘关闭操作,则在获取到的目标视频中,第2s至第3s的画面中显示有对应的预设操作文本“窗帘关闭”;若自动窗帘设备未执行预设的窗帘关闭操作,则在获取到的目标视频中,第2s至第3s的画面中不显示对应的预设操作文本“窗帘关闭”。
在一些实施例中,预设操作文本可以是预设操作对应的描述文本,也可以是智能设备的状态对应的描述文本。
在另一些实施例中,预设操作文本也可以用于指示智能设备能够进行下一步操作。
可以理解的是,在一些情况中,若智能设备执行了预设操作,但是指定画面没有正常加载或没有正常显示,则指定画面中也可能不显示对应的预设操作文本。
S120、基于目标视频对指定画面进行截图,得到指定画面对应的截图图片。
S130、对截图图片进行文字识别,得到由截图图片中的文本字符组成的目标文本字符串。
其中,文本字符可以是文字、数字、符号等,可以是截图图片中可识别的所有文本字符。
具体地,根据场景设计方案,可以确定目标视频中需要进行截图的指定画面。对指定画面进行截图,得到该指定画面对应的截图图片后,对截图图片进行文字识别,以识别出截图图片中的文本字符。将识别出的文本字符进行提取,并组成文本字符串,即为目标文本字符串。
可以理解的是,指定画面可以是目标视频中指定时间段对应的若干个画面,也可以是目标视频中指定时刻对应的画面。
示例性地,以家居场景设计方案为例,参考图1b所示,场景102中包括有空调设备104,空调设备104当前状态为打开。根据场景设计方案,设置空调设备104执行空调关闭操作。假设指定空调设备104执行预设的空调关闭操作后,在生成的视频的第5s的画面中显示对应的预设操作文本“空调关闭”,则指定画面是目标视频中第5s的画面。基于目标视频对目标视频中第5s的指定画面进行截图,得到指定画面对应的截图图片。假设对目标视频中第5s的画面进行截图,则参考图1c所示,得到对应的截图图片106。该截图图片106中可以包含有文本“空调关闭”、画面对应的时刻和视频时长的文本“00:05/00:10”、场景信息的文本“书房”等。对该截图图片进行文字识别,将识别出的文本字符进行提取,并组成目标文本字符串,则得到的目标文本字符串可以是“空调关闭;00:05/00:10;书房;”。
示例性地,若空调设备104未执行预设的空调关闭操作,则得到的截图图片中不包含有文本“空调关闭”。对该截图图片进行文字识别,将识别出的文本字符进行提取,并组成目标文本字符串,则得到的目标文本字符串可以是“00:05/00:10;书房;”。
在一些实施例中,也可以对指定画面的指定区域进行截图,得到指定画面对应的截图图片,并对得到的截图图片进行文字识别。或者,可以在对指定画面进行截图得到对应的截图图片后,对截图图片的指定区域进行文字识别。
可以理解的是,对指定画面进行截图,可以通过调用自动化测试依赖的库中定义的截图方法实现。
S140、根据目标文本字符串与预设操作文本的比较结果,确定场景设计方案的执行情况对应的测试结果。
具体地,可以将目标文本字符串与预设操作文本进行比较,得到目标文本字符串与预设操作文本的比较结果。根据得到的比较结果,判断目标文本字符串是否符合预期,以判断指定画面是否符合预期,进一步可以判断目标视频是否符合预期,从而可以确定场景设计方案的执行情况对应的测试结果为测试通过或者测试不通过,以判断场景设计方案的执行情况是否符合预期。
示例性地,以上述家居场景设计方案为例,参考图1d所示,截图图片108中包含有文本“空调关闭”。对该截图图片108进行文字识别,可以得到目标文本字符串“空调关闭”。假设对应的预设操作文本为“空调关闭”,将该目标文本字符串与预设操作文本进行比较,可以得到比较结果为目标文本字符串与预设操作文本相同,则可以判断指定画面符合预期,从而可以确定场景设计方案的执行情况对应的测试结果为测试通过。
示例性地,继续参考图1d所示,截图图片108中包含有文本“空调关闭”。假设对应的预设操作文本为“空调关闭;窗帘打开”,将目标文本字符串与预设操作文本进行比较,可以得到比较结果为目标文本字符串与预设操作文本不相同,则可以判断指定画面不符合预期,从而可以确定场景设计方案的执行情况对应的测试结果为测试不通过。
可以理解的是,若智能设备执行了预设操作,但是指定画面没有正常加载或没有正常显示,则根据目标文本字符串与预设操作文本的比较结果,也可以确定指定画面是否正常加载或是否正常显示,从而确定场景设计方案的执行情况是否符合预期。
在本说明书中,基于自动化测试框架对目标视频进行自动化测试,以及在自动化测试框架的基础上导入开源的PaddleOCR技术对截图图片进行文字识别。具体地,参考图1e所示,首先,可以在用于进行自动化测试的服务端的Python环境中安装PaddleOCR类库;其次,打开自动化测试依赖的库的源代码,基于PaddleOCR类库,在自动化测试依赖的库的源代码中创建用于文字识别的关键字,创建好的关键字可以在自动化测试过程中直接被调用;然后,基于自动化测试框架开发和调试用于进行自动化测试的脚本,在脚本中引用用于文字识别的关键字;最后,运行开发完成的用于自动化测试的脚本,通过运行脚本中的用于文字识别的关键字,调用PaddleOCR对输入至该关键字的截图图片进行文字识别,并将得到的目标文本字符串返回,以将提取到的目标文本字符串用于比较和判断。通过创建好的关键字可以在自动化测试过程中直接调用PaddleOCR方法实现提取截图图片中的文本字符的功能,方便快捷,且对截图图片中的文本字符的识别和提取速度较快、准确率较高,准确率能够达到90%以上。
在一些实施例中,可以基于Robot Framework自动化测试框架对目标视频进行自动化测试,以及在Robot Framework自动化测试框架的基础上导入开源的PaddleOCR技术对截图图片进行文字识别。利用自动化测试框架的断言函数(assert函数)可以对目标文本字符串与预设操作文本进行比较,以得到目标文本字符串与预设操作文本的比较结果。
示例性地,首先,可以通过pip install paddlepaddle命令在用于进行自动化测试的服务端的Python环境中安装PaddleOCR类库;其次,可以使用Python IDE(IntegratedDevelopment Environment,集成开发环境)打开SeleniumLibrary库的源代码(Python安装目录下的Lib\site-packages\SeleniumLibrary);再次,由于SeleniumLibrary库中包括有多个常用关键字,这些关键字无法提取目标视频中显示的文本,使得无法进一步判断预设文本是否在指定的时间内显示在目标视频中,因此需要在SeleniumLibrary库中创建新的用于文字识别的关键字。具体地,可以基于PaddleOCR类库创建用于文字识别的关键字,比如,创建关键字image_to_str(),并在关键字中调用PaddleOCR方法,并可以将该关键字添加至SeleniumLibrary库中关键字目录(keywords目录)下的任一个.py文件中;然后,基于Robot Framework自动化测试框架开发和调试用于自动化测试的脚本,并可以在该脚本中运用该关键字;最后,运行开发完成的用于自动化测试的脚本,对截图图片中的文本字符进行提取,得到目标文本字符串,将得到的目标文本字符串用于比较和判断。由此,基于RobotFramework自动化测试框架,通过开发完成的自动化测试脚本,可以基于目标视频对指定画面进行截图,得到指定画面对应的截图图片,以及可以直接调用PaddleOCR方法对得到的截图图片进行文字识别以得到目标文本字符串。通过利用Robot Framework自动化测试框架的断言函数,可以对目标文本字符串与预设操作文本进行比较,从而确定场景设计方案的执行情况对应的测试结果。
可以理解的是,上述示例中的关键字也可以理解为函数或者方法。在RobotFramework自动化测试框架中,任意用例需要文字识别的功能都可以引用基于PaddleOCR类库创建好的用于文字识别的关键字对需要提取文本的目标图片中的文本字符进行提取。
需要说明的是,SeleniumLibrary库为WEB应用程序自动化测试过程中依赖的库,针对实际的自动化测试的需求,可以打开对应的其他库,并在打开的对应的库中引入基于PaddleOCR类库封装的用于文字识别的函数或方法。对截图图片进行文字识别得到的文本字符,还可以开源作为其他关键字的输入,或者用于其他自动化测试步骤中。
在另一些实施例中,也可以基于其他自动化测试框架(如pytest自动化测试框架等)对目标视频进行自动化测试。可以将PaddleOCR方法单独封装成Python的函数,使其他Python自动化测试框架均能够调用该方法。
需要说明的是,也可以使用其他的OCR技术代替本说明书中的PaddleOCR技术。例如,商用OCR技术、开源的EasyOCR技术和Tesseract OCR技术等。其中,商用OCR技术通常具有多方面的使用限制,例如,一些商用OCR技术的免费账号具有每月使用次数限制,且一些商用OCR技术必须在公网中使用;开源的EasyOCR、Tesseract OCR等技术的文字识别准确率较低,若截图图片的清晰度较高且截图图片中的文本字符复杂度不高,可以使用EasyOCR、Tesseract OCR等技术作为代替。
上述实施方式中,针对基于场景设计方案生成的视频,需要通过判断指定画面是否显示了预设操作文本,以判断该指定画面是否符合预期,从而判断该视频是否符合预期,并进一步判断场景设计方案的执行情况符合预期。若不对指定画面进行判断,则智能设备可能没有执行预设操作或者指定画面可能没有正常加载,自动化测试可能失败。相关技术中采用页面元素抓取的方式对待测试页面中的文本进行提取,然而,该方式无法对视频中的指定画面进行文本提取。因此,提出一种场景设计方案测试方法,通过对指定画面进行截图,并对得到的截图图片进行文字识别,以得到由截图图片中的文本字符组成的文本字符串。将得到的文本字符串与预设操作文本进行比较,以确定场景设计方案得到执行情况对应的测试结果。由此,解决在针对基于场景设计方案生成的动态视频进行测试的过程中,指定画面的预期结果无法判断的问题。同时,将文字识别技术结合运用到可扩展的自动化测试框架中,能够提高对指定画面的文字识别的准确率,解决了目前的自动化测试框架中没有官方的AI文字识别技术的问题,使自动化测试的结果更加准确。
在一些实施方式中,根据目标文本字符串与预设操作文本的比较结果,确定场景设计方案的执行情况对应的测试结果,可以包括:若目标文本字符串包含有预设操作文本,确定场景设计方案的执行情况对应的测试结果为测试通过。
具体地,可以利用自动化测试框架的断言函数(assert函数)对目标文本字符串与预设操作文本进行比较,以判断目标文本字符串是否包含预设操作文本。若目标文本字符串包含有预设操作文本,表明指定画面中正常显示有预设操作文本,进一步可以表明指定画面符合预期,从而可以确定目标视频符合预期,则自动化测试框架可以确定场景设计方案的执行情况对应的测试结果为测试通过。
在一些实施方式中,根据目标文本字符串与预设操作文本的比较结果,确定场景设计方案的执行情况对应的测试结果,可以包括:若目标文本字符串不包含有预设操作文本,确定场景设计方案的执行情况对应的测试结果为测试不通过。
具体地,可以利用自动化测试框架的断言函数(assert函数)对目标文本字符串与预设操作文本进行比较,以判断目标文本字符串是否包含预设操作文本。若目标文本字符串不包含有预设操作文本,表明指定画面中未正常显示有预设操作文本,进一步可以表明指定画面不符合预期,从而可以确定目标视频不符合预期,则自动化测试框架可以确定场景设计方案的执行情况对应的测试结果为测试不通过。
在一些实施方式中,基于目标视频对指定画面进行截图,得到指定画面对应的截图图片,可以包括:按照预设时刻对指定画面进行截图,得到指定画面对应的截图图片。
其中,预设时刻为目标视频的时长中的时刻。指定画面为目标视频中预设时刻对应的画面。
具体地,在场景设计方案中,可以预先设置好对应的场景中的智能设备需要执行的预设操作,并可以设置智能设备执行预设操作后在目标视频中预设时刻的指定画面中显示的预设操作文本。若智能设备执行了场景设计方案中相应的预设操作,则在目标视频的预设时刻的指定画面中会显示对应的预设操作文本;若智能设备未执行场景设计方案中相应的预设操作,则在目标视频的预设时刻的指定画面中不会显示对应的预设操作文本。因此,基于目标视频,可以按照预设时刻对目标视频中的指定画面进行截图,得到指定画面对应的截图图片,并对得到的截图图片进行文字识别,以进一步确定场景设计方案的执行情况对应的测试结果。
示例性地,以家居场景设计方案为例,场景中包括有空调设备等,根据场景设计方案,设置场景开始执行时空调设备执行空调打开操作。假设指定在生成的视频的第2s的时刻对应的指定画面中显示对应的预设操作文本“空调打开”,则预设时刻为第2s。按照预设时刻,可以对得到的目标视频中第2s时刻对应的指定画面进行截图,得到指定画面对应的截图图片。
在一些实施例中,预设操作文本可能在目标视频中的一段连续时间对应的若干个画面中均有显示,则预设时刻可以是该段连续时间内的任一时刻。
示例性地,以家居场景设计方案为例,场景中包括有空调设备等,根据场景设计方案,设置场景开始执行时空调设备执行空调关闭操作。假设指定在生成的视频的起始时刻至第2s时刻时的指定画面中显示对应的预设操作文本“空调关闭”,预设时刻为第2s。参考图2a所示,获取基于该家居场景设计方案生成的目标视频202,空调设备执行空调关闭操作,并在目标视频202中时刻“00:01”对应的画面中显示文本“空调关闭”。基于该目标视频202,可以基于自动化测试框架开发自动化测试脚本,在脚本中设置按照预设时刻第2s对指定画面进行截图,参考图2b所示,得到该指定画面对应的截图图片204,截图图片204中包含有“空调关闭”、“主卧”等文本字符。
在一些实施方式中,指定画面的数量为多个。对截图图片进行文字识别,得到由截图图片中的文本字符组成的目标文本字符串,可以包括:对任一指定画面对应的截图图片进行文字识别,得到由任一指定画面对应的截图图片中的文本字符组成的目标文本字符串。
在一些情况中,由于场景中的智能设备的数量可能为多个,每一个智能设备分别执行场景预设方案中的对应预设操作,从而根据该场景设计方案可以得到多个预设时刻。因此,预设时刻对应的指定画面的数量可能为多个。
具体地,基于目标视频,可以按照多个预设时刻分别对对应的指定画面进行截图,以得到各指定画面分别对应的截图图片。对各截图图片分别进行文字识别,以得到各截图图片分别对应的目标文本字符串。
在一些实施例中,可以基于自动化测试框架开发自动化测试脚本,在脚本中根据多个预设时刻设置截图的等待时间,实现按照多个预设时刻分别对对应的指定画面进行截图,得到各指定画面分别对应的截图图片。进一步地,可以在对指定画面截图后,将得到的截图图片进行保存,并在所有指定画面的截图完成后,对保存的各截图图片分别进行文字识别。
示例性地,基于Robot Framework自动化测试框架开发自动化测试脚本,根据多个预设时刻,在脚本中可以通过sleep方法设置对应的等待时间,使得在自动化测试过程中可以在相应的等待时间到达后对目标视频中的指定画面进行截图。参考图3a所示,根据多个预设时刻,可以在脚本中通过sleep方法分别设置等待时间1s、2s、1s、1s、1s、1s、1s、1s、1s,使得在自动化测试过程中,分别在等待对应的时间后对目标视频的指定画面进行截图,以分别得到对应的截图图片pic1、pic2、pic3、pi4、pic5、pic6、pic7、pic8、pic9。在对指定画面截图后,根据对应的路径将得到的截图图片进行保存。在所有指定画面的截图完成后,参考图3b所示,通过SeleniumLibrary库中新增的用于文字识别的关键字调用文字识别技术对上述已保存的截图图片分别进行文字识别,以得到各截图图片分别对应的目标文本字符串str1、str2、str3、str4、str5、str6、str7、str8、str9。
示例性地,继续参考图2b所示,截图图片204被保存为截图图片pic1。截图图片pic1中包含有“空调关闭”、“00:02/00:10”、“主卧”、“全屏”等文本字符。通过调用文字识别技术对该截图图片进行文字识别,参考图3c所示,可以得到由该截图图片中的文本字符组成的目标文本字符串str1。其他的目标文本字符串str2、str3、str4、str5、str6、str7、str8、str9在此不再赘述。
在一些实施方式中,根据目标文本字符串与预设操作文本的比较结果,确定场景设计方案的执行情况对应的测试结果之前,场景设计方案测试方法还可以包括:将多个目标文本字符串进行拼接,得到目标拼接字符串。相应地,根据目标文本字符串与预设操作文本的比较结果,确定场景设计方案的执行情况对应的测试结果,可以包括:根据目标拼接字符串与预设操作文本的比较结果,确定场景设计方案的执行情况对应的测试结果。
在一些情况中,由于场景设计方案中的预设操作是预先设定好的,预设操作文本也是预先设定好的,基于目标视频的指定画面得到的目标文本字符串存在包含对应的预设操作文本和不包含对应的预设操作文本两种情况。因此,可以将基于目标视频的多个指定画面得到的多个目标文本字符串进行拼接,将拼接得到的字符串与预设操作文本进行比较,并根据比较结果可以确定场景设计方案的执行情况对应的测试结果。
具体地,预设操作文本的数量也为多个。对多个截图图片分别进行文字识别,得到各截图图片分别对应的目标文本字符串后,可以将得到的多个目标文本字符串进行拼接,得到目标拼接字符串。将目标拼接字符串与各预设操作文本分别进行比较,若目标拼接字符串包含有各预设操作文本,则场景设计方案的执行情况对应的测试结果为测试通过;若目标拼接字符串不包含有任一预设操作文本,则场景设计方案的执行情况对应的测试结果为测试不通过。
示例性地,基于Robot Framework自动化测试框架对场景设计方案进行测试。参考图4a所示,首先可以通过append方法将前述得到的目标文本字符串str1、str2、str3、str4等进行拼接,得到目标拼接字符串res并保存。然后可以通过Should Contain断言函数将目标拼接字符串res与各预设操作文本分别进行比较。例如,场景中包括空调设备、灯带设备、窗帘电机设备、纱电机设备、智能灯设备等,预设操作文本包括“空调关闭”、“灯带开启”、“窗帘电机开启”、“纱电机开启”、“智能灯开启”。将目标拼接字符串res与预设操作文本“空调关闭”、“灯带开启”、“窗帘电机开启”、“纱电机开启”、“智能灯开启”分别进行比较,若目标拼接字符串res包含有上述5个预设操作文本,则场景设计方案的执行情况对应的测试结果为测试通过;若目标拼接字符串res不包含有上述任一个预设操作文本,比如,目标拼接字符串res不包含有预设操作文本“灯带开启”,则场景设计方案的执行情况对应的测试结果为测试不通过。进一步地,Robot Framework自动化测试框架可以基于测试结果生成相应的测试结果报告。参考图4b所示,为Robot Framework自动化测试框架在场景设计方案的执行情况对应的测试结果为测试通过的情况下生成的测试结果报告的示意图。场景设计方案的执行情况对应的测试结果为测试不通过的情况在此不再赘述。
在一些实施方式中,场景设计方案包括办公场景设计方案、家居场景设计方案、商场场景设计方案中的至少一个。预设操作用于指示智能设备在预设时间执行相应的预设动作。
具体地,在场景设计方案中,可以预先设置好对应的场景中的智能设备需要执行的预设操作,包括在预设时间需要执行的预设动作。若智能设备根据场景设计方案,在预设时间执行了相应的预设动作,则根据所有智能设备执行相应的预设操作的过程,可以生成相应的目标视频。
可以理解的是,预设时间可以是预设的目标视频时长中的某一段时间,相应地,指定画面为该预设时间内的画面。
在一些实施例中,预设时间可以是预设的目标视频时长中的某一时刻,指定画面为该预设时间对应的画面。
需要说明的是,场景设计方案还可以是医院场景设计方案、校园场景设计方案等。
本说明书实施方式提供一种场景设计方案测试装置,参考图5所示,该场景设计方案测试装置500可以包括:视频获取模块510、画面截图模块520、文字识别模块530、文本比较模块540。
视频获取模块510,用于获取目标视频;其中,目标视频用于展示智能设备执行场景设计方案中的预设操作的过程;若智能设备执行预设操作,目标视频中的指定画面中显示用于描述预设操作的执行情况的预设操作文本。
画面截图模块520,用于基于目标视频对指定画面进行截图,获取指定画面对应的截图图片。
文字识别模块530,用于对截图图片进行文字识别,得到由截图图片中的文本字符组成的目标文本字符串;
文本比较模块540,用于根据目标文本字符串与预设操作文本的比较结果,确定场景设计方案的执行情况对应的测试结果。
关于场景设计方案测试装置的具体限定可以参见上文中对于场景设计方案测试方法的限定,在此不再赘述。上述场景设计方案测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
本说明书实施方式还提供一种计算机设备,参考图6所示,该计算机设备600包括存储器610、处理器620及存储在存储器610上并可在处理器620上运行的计算机程序630,处理器620执行计算机程序630时,实现前述任一项实施方式中的场景设计方案测试方法。
本说明书实施方式还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现前述任一项实施方式中的场景设计方案测试方法。
需要说明的是,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (10)

1.一种场景设计方案测试方法,其特征在于,所述方法包括:
获取目标视频;其中,所述目标视频用于展示智能设备执行所述场景设计方案中的预设操作的过程;若所述智能设备执行所述预设操作,所述目标视频中的指定画面中显示用于描述所述预设操作的执行情况的预设操作文本;
基于所述目标视频对所述指定画面进行截图,得到所述指定画面对应的截图图片;
对所述截图图片进行文字识别,得到由所述截图图片中的文本字符组成的目标文本字符串;
根据所述目标文本字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标文本字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果,包括:
若所述目标文本字符串包含有所述预设操作文本,确定所述场景设计方案的执行情况对应的测试结果为测试通过。
3.根据权利要求1所述的方法,其特征在于,所述根据所述目标文本字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果,包括:
若所述目标文本字符串不包含有所述预设操作文本,确定所述场景设计方案的执行情况对应的测试结果为测试不通过。
4.根据权利要求1所述的方法,其特征在于,所述基于所述目标视频对所述指定画面进行截图,得到所述指定画面对应的截图图片,包括:
按照预设时刻对所述指定画面进行截图,得到所述指定画面对应的截图图片。
5.根据权利要求1至4任一所述的方法,其特征在于,所述指定画面的数量为多个;所述对所述截图图片进行文字识别,得到由所述截图图片中的文本字符组成的目标文本字符串,包括:
对任一指定画面对应的截图图片进行文字识别,得到由所述任一指定画面对应的截图图片中的文本字符组成的目标文本字符串。
6.根据权利要求5所述的方法,其特征在于,所述根据所述目标文本字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果之前,所述方法还包括:
将多个所述目标文本字符串进行拼接,得到目标拼接字符串;
所述根据所述目标文本字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果,包括:
根据所述目标拼接字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果。
7.根据权利要求1至4任一项所述的方法,其特征在于,所述场景设计方案包括办公场景设计方案、家居场景设计方案、商场场景设计方案中的至少一个;
所述预设操作用于指示所述智能设备在预设时间执行相应的预设动作。
8.一种场景设计方案测试装置,其特征在于,所述装置包括:
视频获取模块,用于获取目标视频;其中,所述目标视频用于展示智能设备执行所述场景设计方案中的预设操作的过程;若所述智能设备执行所述预设操作,所述目标视频中的指定画面中显示用于描述所述预设操作的执行情况的预设操作文本;
画面截图模块,用于基于所述目标视频对所述指定画面进行截图,获取所述指定画面对应的截图图片;
文字识别模块,用于对所述截图图片进行文字识别,得到由所述截图图片中的文本字符组成的目标文本字符串;
文本比较模块,用于根据所述目标文本字符串与所述预设操作文本的比较结果,确定所述场景设计方案的执行情况对应的测试结果。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202310362468.4A 2023-04-04 2023-04-04 场景设计方案测试方法、装置、计算机设备及存储介质 Pending CN116453136A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310362468.4A CN116453136A (zh) 2023-04-04 2023-04-04 场景设计方案测试方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310362468.4A CN116453136A (zh) 2023-04-04 2023-04-04 场景设计方案测试方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN116453136A true CN116453136A (zh) 2023-07-18

Family

ID=87124975

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310362468.4A Pending CN116453136A (zh) 2023-04-04 2023-04-04 场景设计方案测试方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN116453136A (zh)

Similar Documents

Publication Publication Date Title
CN107025174B (zh) 用于设备的用户界面异常测试的方法、装置和可读储介质
CN110554962A (zh) 回归测试的流程覆盖方法、服务器及计算机可读存储介质
CA2773981C (en) System and method of substituting parameter sets in self-contained mini-applications
CN110830791B (zh) 一种电视整机软件功能的自动测试方法、装置及系统
CN113515453B (zh) 网页测试系统
CN104572446A (zh) 一种自动化测试方法及系统
CN113377667B (zh) 一种基于场景的测试方法、装置、计算机设备及存储介质
CN109614317A (zh) 电子装置、用户界面测试方法及存储介质
CN114742992A (zh) 视频异常检测方法、装置和电子设备
CN110990264A (zh) Ui自动化测试的元素识别方法、装置、设备及存储介质
CN109684192A (zh) 基于数据处理的本地测试方法、设备、存储介质及装置
CN113824987A (zh) 直播间首帧耗时的确定方法、介质、装置和计算设备
CN112948267A (zh) 网页测试方法、网页测试系统、存储介质及电子设备
CN110113630B (zh) 视频检测方法、装置、电子设备及存储介质
CN116453136A (zh) 场景设计方案测试方法、装置、计算机设备及存储介质
WO2024021711A1 (zh) 动态互联网内容无障碍改造方法及装置及网站内容无障碍改造方法
CN115514677B (zh) 服务器拨测方法及系统
CN115860827A (zh) 一种移动端广告测试方法及系统
CN117171000A (zh) 一种应用程序app测试方法、装置、电子设备及存储介质
CN111611032B (zh) 一种用户界面绘制层级、过度绘制的检测方法及装置
CN117056241B (zh) 用于移动终端的应用程序测试方法和装置
CN112698881B (zh) Android图片加载行为缺陷动态检测方法
EP1868099A1 (en) Bug management tool
WO2021036599A1 (zh) 机顶盒测试方法及装置、机顶盒及计算机可读存储介质
CN116263743A (zh) 测试方法及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination