CN112416775A - 基于人工智能的软件自动化测试方法、装置及电子设备 - Google Patents

基于人工智能的软件自动化测试方法、装置及电子设备 Download PDF

Info

Publication number
CN112416775A
CN112416775A CN202011329228.7A CN202011329228A CN112416775A CN 112416775 A CN112416775 A CN 112416775A CN 202011329228 A CN202011329228 A CN 202011329228A CN 112416775 A CN112416775 A CN 112416775A
Authority
CN
China
Prior art keywords
vehicle
machine
display signal
test script
test
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.)
Granted
Application number
CN202011329228.7A
Other languages
English (en)
Other versions
CN112416775B (zh
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.)
Beijing Testin Information Technology Co Ltd
Original Assignee
Beijing Yunju 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 Beijing Yunju Intelligent Technology Co ltd filed Critical Beijing Yunju Intelligent Technology Co ltd
Priority to CN202011329228.7A priority Critical patent/CN112416775B/zh
Publication of CN112416775A publication Critical patent/CN112416775A/zh
Application granted granted Critical
Publication of CN112416775B publication Critical patent/CN112416775B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Abstract

本发明实施例提供了一种基于人工智能的软件自动化测试方法、装置及电子设备,包括:从车机主机的显示信号输出端口获取车机的视频显示信号,其中,视频显示信号用于控制车机的显示组件显示与视频显示信号相应的显示内容;然后,基于获取的车机的视频显示信号,向测试设备提供对车机进行远程测试的车机界面画面,以使测试设备基于预先生成的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试。通过本发明实施例,有效提高了通过测试设备在对待测试车机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对待测试车机进行自动化测试的准确度。

Description

基于人工智能的软件自动化测试方法、装置及电子设备
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于人工智能的软件自动化测试方法、装置及电子设备。
背景技术
出于安全等方面的考虑,Linux系统的汽车主机不同于安卓端,通常是封闭的系统,不允许安装任何第三方系统服务程序,因此很难应用目前已经很成熟的安卓远程测试。
目前针对Linux汽车主机进行自动化测试的方法,通常是在Linux汽车主机的显示屏前架设一台摄像头,通过该摄像头来采集显示屏幕上所显示的视频数据,然后,将获取的上述视频数据通过网络发送给测试设备,工作人员通过测试设备根据获取的上述视频数据录制测试脚本,通过上述录制的测试脚本对待测试的Linux汽车主机进行自动化测试。
然而,采用上述方式对Linux汽车主机进行自动化测试的过程中,由于工作人员通过测试设备在录制测试脚本过程中所获取的视频数据是通过摄像头获取的,而通过上述摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确的录制操作,进而导致通过上述录制的测试脚本无法对待测试的Linux汽车主机进行精确的自动化测试。
发明内容
本发明实施例的目的是提供一种基于人工智能的软件自动化测试方法、装置及电子设备,以解决现有技术中在对车机(如Linux汽车主机)进行自动化测试的过程中无法对汽车主机进行精准自动化测试的技术问题。
为了解决上述技术问题,本发明实施例是这样实现的:
第一方面,本发明实施例提供了一种基于人工智能的软件自动化测试方法,包括:
从车机主机的显示信号输出端口获取所述车机的视频显示信号,其中,所述视频显示信号用于控制所述车机的显示组件显示与所述视频显示信号相应的显示内容;
基于获取的所述车机的视频显示信号,向测试设备提供对所述车机进行远程测试的车机界面画面,以使所述测试设备基于预先生成的测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试。
可选地,所述从车机主机的显示信号输出端口获取所述车机的视频显示信号,包括:
通过高速数据线HSD与所述车机主机的显示信号输出端口连接以获取所述车机的视频显示信号。
可选地,所述基于获取的所述车机的视频显示信号,向测试设备提供对所述车机进行远程测试的车机界面画面,包括:
基于获取的所述车机的视频显示信号,对所述视频显示信号进行解序列化操作,得到原始视频显示信号;
基于预设的视频压缩算法,对所述原始视频显示信号进行压缩处理,得到界面视频传输信号;
向测试设备提供对所述车机进行远程测试的界面视频传输信号,以得到对所述车机进行远程测试的车机界面画面。
可选地,所述基于预设的视频压缩算法,对所述原始视频显示信号进行压缩处理,得到界面视频传输信号,包括:
基于预设的视频压缩算法,对所述原始视频显示信号进行压缩处理得到重编码后的视频显示信号;
对经过重编码后的视频显示信号中的图像帧按照预设编号规则进行编号处理,得到整合了帧编号的图像帧,其中,所述整合了帧编号的图像帧中携带有编号信息;
对所述整合了帧编号的图像帧按照预设组装规则进行处理,得到界面视频传输信号。
可选地,所述对经过重编码后的视频显示信号中的图像帧按照预设编号规则进行编号处理,得到整合了帧编号的图像帧,包括:
将经过重新编码后的视频显示信号中的图像帧报文拆解为多个数据段,其中,所述数据段中包含报文头和报文数据;
将携带有编号的预设数据段插入至所述数据段之间,得到整合了帧编号的图像帧。
可选地,所述基于获取的所述车机的视频显示信号,向测试设备提供对所述车机进行远程测试的车机界面画面,包括:
基于获取的所述车机的视频显示信号,通过socket技术向测试设备提供对所述车机进行远程测试的车机界面画面。
第二方面,本发明实施例提供了一种基于人工智能的软件自动化测试方法,所述方法包括:
接收并显示车机界面画面,其中,所述车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;
接收针对所述车机界面画面的输入操作,根据所述输入操作生成测试脚本,其中,所述测试脚本用于指示所述车机执行相应的控制操作;
将所述测试脚本提供给待测试的车机,以使所述车机根据接收到的所述测试脚本执行相应的控制操作。
可选地,所述将所述测试脚本提供给待测试的车机,以使所述车机根据接收到的所述测试脚本执行相应的控制操作,包括:
将所述测试脚本发送给AI服务器进行解析,以使所述AI服务器将解析后的所述测试脚本提供给待测试的车机,以使所述车机根据接收到的所述测试脚本执行相应的控制操作。
可选地,所述接收针对所述车机界面画面的输入操作,根据所述输入操作生成测试脚本,包括:
接收针对所述车机界面画面的触发操作,确定所述触发操作的操作类型以及所述触发操作所对应的所述车机界面画面的触发区域;
根据所述触发区域以及所述触发操作的操作类型生成测试脚本,其中,所述测试脚本用于指示所述车机执行所述触发区域所对应的控制操作。
可选地,所述输入操作为用户通过输入设备输入的自然语言操作,所述接收针对所述车机界面画面的输入操作,根据所述输入操作生成测试脚本,包括:
接收针对所述车机界面画面的输入操作;
根据所述输入操作,确定所述输入操作对应的自然语言;
根据所述自然语言所对应的内容生成测试脚本。
可选地,所述车机界面画面中的图像帧为携带有编号信息的图像帧;
所述方法还包括:
判断接收到的车机界面画面中的当前图像帧编号与上一图像帧编号是否符合预设规则;
在接收到的当前图像帧编号与上一帧图像帧编号不满足所述预设规则的情况下,生成车机界面画面获取请求;
将所述车机界面画面获取请求发送至视频采集集成平台。
第三方面,本发明实施例提供了一种基于人工智能的软件自动化测试方法,所述方法包括:
获取车机界面画面,其中,所述车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;
接收测试脚本,根据接收的所述测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试,其中,所述测试脚本是通过接收针对所述车机界面画面的输入操作,根据所述输入操作生成的,所述测试脚本用于指示所述车机执行相应的控制操作。
可选地,所述测试脚本包括目标信息以及与所述目标信息相对应的触发操作信息;
所述接收测试脚本,根据接收的所述测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试,包括:
接收测试脚本;
根据接收的所述测试脚本,确定所述测试脚本中所包含的每一条脚本语句,以及所述目标信息所在的当前屏幕信息;
确定所述目标信息在所述当前屏幕上的坐标信息;
根据所述坐标信息,以及与所述坐标信息相对应的触发操作信息模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试。
第四方面,本发明实施例提供了一种基于人工智能的软件自动化测试装置,所述装置包括:
第一获取模块,用于从车机主机的显示信号输出端口获取所述车机的视频显示信号,其中,所述视频显示信号用于控制所述车机的显示组件显示与所述视频显示信号相应的显示内容;
第一发送模块,用于基于获取的所述车机的视频显示信号,向测试设备提供对所述车机进行远程测试的车机界面画面,以使所述测试设备基于预先生成的测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试。
第五方面,本发明实施例提供了一种基于人工智能的软件自动化测试装置,所述装置包括:
处理模块,用于接收并显示车机界面画面,其中,所述车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;
第一生成模块,用于接收针对所述车机界面画面的输入操作,根据所述输入操作生成测试脚本,其中,所述测试脚本用于指示所述车机执行相应的控制操作;
第二发送模块,用于将所述测试脚本提供给待测试的车机,以使所述车机根据接收到的所述测试脚本执行相应的控制操作。
第六方面,本发明实施例提供了一种基于人工智能的软件自动化测试装置,所述装置包括:
第二获取模块,用于获取车机界面画面,其中,所述车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;
接收模块,用于接收测试脚本,根据接收的所述测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试,其中,所述测试脚本是通过接收针对所述车机界面画面的输入操作,根据所述输入操作生成的,所述测试脚本用于指示所述车机执行相应的控制操作。
第七方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线;其中,所述处理器、所述通信接口以及所述存储器通过总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于执行所述存储器上所存放的程序,实现如第一方面所述的基于人工智能的软件自动化测试方法步骤;或者实现如第二方面所述的基于人工智能的软件自动化测试方法步骤;或者实现如第三方面所述的基于人工智能的软件自动化测试方法步骤。
第八方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的基于人工智能的软件自动化测试方法步骤;或者实现如第二方面所述的基于人工智能的软件自动化测试方法步骤;或者实现如第三方面所述的基于人工智能的软件自动化测试方法步骤。
由以上本发明实施例提供的技术方案可见,本发明实施例通过从车机主机的显示信号输出端口获取车机的视频显示信号,其中,视频显示信号用于控制车机的显示组件显示与视频显示信号相应的显示内容;然后,基于获取的车机的视频显示信号,向测试设备提供对车机进行远程测试的车机界面画面,以使测试设备基于预先生成的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试的方法,有效解决了由于通过摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确录制,进而导致通过上述方式录制的测试脚本无法实现对待测试的Linux汽车主机进行精确的自动化测试的问题,而本申请中由于测试设备所获取的车机界面画面是通过从车机主机的显示信号输出端口获取的,使得在测试设备中显示的车机界面画面与在待测试的车机显示屏幕上显示的车机界面画面可以按照1:1的比例进行显示,有效提高了工作人员通过测试设备在对待测试Linux汽车主机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于人工智能的软件自动化测试方法的第一种流程意图;
图2为本发明实施例提供的基于人工智能的软件自动化测试方法的第二种流程意图;
图3为本发明实施例提供的基于人工智能的软件自动化测试方法的第三种流程意图;
图4为本发明实施例提供的基于人工智能的软件自动化测试方法的第四种流程意图;
图5为本发明实施例提供的基于人工智能的软件自动化测试方法的第五种流程意图;
图6为本发明实施例提供的基于人工智能的软件自动化测试方法的第六种流程意图;
图7为本发明实施例提供的基于人工智能的软件自动化测试方法的第七种流程意图;
图8为本发明实施例提供的基于人工智能的软件自动化测试装置的第一种模块组成示意图;
图9为本发明实施例提供的基于人工智能的软件自动化测试装置的第二种模块组成示意图;
图10为本发明实施例提供的基于人工智能的软件自动化测试装置的第三种模块组成示意图;
图11为本发明实施例提供的电子设备的结构示意图。
具体实施方式
本发明实施例提供了一种基于人工智能的软件自动化测试方法、装置及电子设备。
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
如图1所示,本发明实施例提供一种基于人工智能的软件自动化测试方法,该方法的执行主体可以为视频采集集成设备,其中,该视频采集集成设备可以是能够从车机主机的显示信号输出端口获取车机的视频显示信号,而且可以基于获取的车机的视频显示信号,向测试设备提供对车机进行远程测试的车机界面画面的设备。该方法具体可以包括以下步骤:
在步骤S102中,从车机主机的显示信号输出端口获取车机的视频显示信号,其中,视频显示信号用于控制车机的显示组件显示与视频显示信号相应的显示内容。
其中,上述车机可以是Linux系统的汽车主机,上述显示组件可以是上述Linux系统的汽车主机上的显示屏幕或视频图像显示设备等。上述视频显示信号通常来自于上述汽车主机内部的显示芯片,该显示芯片将获取到的图像数据进行序列化后发送给汽车主机的显示端口(即上述主机的显示信号输出端口),然后,通过与上述显示端口相连接的显示组件,将上述经过显示芯片序列化处理后得到的数据进行显示。
在实施中,出于安全等方面的考虑,Linux系统的汽车主机不同于安卓端,通常是封闭的系统,不允许安装任何第三方系统服务程序,因此很难应用目前已经很成熟的安卓远程测试。目前针对Linux汽车主机进行自动化测试的方法,通常是在Linux汽车主机的显示屏前架设一台摄像头,通过该摄像头来采集显示屏幕上所显示的视频数据,然后,将获取的上述视频数据通过网络发送给测试设备,工作人员通过测试设备根据获取的上述视频数据录制测试脚本,通过上述录制的测试脚本对待测试的Linux汽车主机进行自动化测试。然而,采用上述方式对Linux汽车主机进行自动化测试的过程中,由于工作人员通过测试设备在录制测试脚本过程中所获取的视频数据是通过摄像头获取的,而通过上述摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确的录制操作,进而导致通过上述录制的测试脚本无法对待测试的Linux汽车主机进行精确的自动化测试。为此,本发明实施例提供一种能够解决上述问题的技术方案,具体可以参见下述内容。
具体的,在实施中,上述视频采集集成设备可以通过有线传输或者无线传输的方式从上述车机主机的显示信号输出端口获取车机的视频显示信号,例如,上述无线传输方式可以包括蓝牙、WIFI等传输方式来获取车机的视频显示信号。上述有线传输方式可以是通过将连接在上述视频采集集成设备上的数据线的另一端连接在上述车机主机的显示信号输出端口的方式来获取车机的视频显示信号等。
在步骤S104中,基于获取的车机的视频显示信号,向测试设备提供对车机进行远程测试的车机界面画面,以使测试设备基于预先生成的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试。
其中,上述预先生成的测试脚本可以是工作人员通过测试设备接收到的车机界面画面,在基于测试设备显示屏幕上显示的车机界面画面,对上述待测试的车机进行远程测试的过程中预先录制相应的测试操作而生成的测试脚本。
在实施中,上述视频采集集成设备通过上述步骤S102的处理,从车机主机的显示信号输出端口获取到车机的视频显示信号之后,可以基于上述获取的车机的视频显示信号,以及获取到的测试设备的地址信息,可以根据上述测试设备的地址信息,通过网络向测试设备提供对车机进行远程测试的车机界面画面,以使测试设备基于预先生成的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试。其中,上述测试设备的地址信息可以包括测试设备的IP地址信息等。
由以上本发明实施例提供的技术方案可见,本发明实施例通过从车机主机的显示信号输出端口获取车机的视频显示信号,其中,视频显示信号用于控制车机的显示组件显示与视频显示信号相应的显示内容;然后,基于获取的车机的视频显示信号,向测试设备提供对车机进行远程测试的车机界面画面,以使测试设备基于预先生成的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试的方法,有效解决了由于通过摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确录制,进而导致通过上述方式录制的测试脚本无法实现对待测试的Linux汽车主机进行精确的自动化测试的问题,而本申请中由于测试设备所获取的车机界面画面是通过从车机主机的显示信号输出端口获取的,使得在测试设备中显示的车机界面画面与在待测试的车机显示屏幕上显示的车机界面画面可以按照1:1的比例进行显示,有效提高了工作人员通过测试设备在对待测试Linux汽车主机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
进一步的,如图2所示,上述步骤S102的具体处理过程可以多种多样,以下再提供一种可选的处理过程,具体可以参见下述步骤S1022的具体处理过程。
在步骤S1022中,通过高速数据线HSD与车机主机的显示信号输出端口连接以获取车机的视频显示信号。
在实施中,可以通过将上述高速数据线HSD(High Speed Data)的一个端口连接到视频采集集成设备的视频采集输入端口,将上述高速数据线HSD(High Speed Data)的另一个端口连接到车机主机的显示信号输出端口的方式,将从车机主机的显示信号输出端口输出的车机的视频显示信号输入至上述视频采集集成设备,从而使得上述视频采集集成设备获取到上述车机的视频显示信号。
进一步的,上述步骤S104的具体处理过程可以多种多样,以下再提供一种可选的处理过程,具体可以参见下述步骤A2-步骤A6的具体处理过程。
在步骤A2中,基于获取的车机的视频显示信号,对视频显示信号进行解序列化操作,得到原始视频显示信号。
在实施中,上述视频采集集成设备通过上述S102的处理从车机主机的显示信号输出端口获取到车机的视频显示信号之后,可以基于获取的车机的视频显示信号,对上述视频显示信号进行解序列化操作,还原原始的视频显示信号,从而得到原始视频显示信号。之后,上述视频采集集成设备可以对上述原始视频显示信号进行采集,并将采集的上述原始视频显示信号放入上述视频采集集成设备中的内存指定区域的队列中,启动转录线程,对上述存放在内存指定区域内的原始视频显示信号进行逐帧获取。
在步骤A4中,基于预设的视频压缩算法,对原始视频显示信号进行压缩处理,得到界面视频传输信号。
其中,上述预设的视频压缩算法可以是H.264、H.265、H.266、VP8、VP9、AV1、AVS1、AVS2等。上述界面视频传输信号可以是经过上述预设的视频压缩算法处理后得到的界面信号。
在实施中,以上述预设的视频压缩算法为H.264为例,上述视频采集集成设备通过上述步骤A2的处理得到原始视频显示信号之后,可以采用H.264压缩算法,对上述原始视频信号进行压缩处理,得到界面视频传输信号。
在步骤A6中,向测试设备提供对车机进行远程测试的界面视频传输信号,以得到对车机进行远程测试的车机界面画面。
在实施中,上述视频采集集成设备可以预先获取测试设备的地址信息(如测试设备的网络IP地址信息),然后,基于获取的上述测试设备的地址信息,向测试设备提供对车机进行远程测试的界面视频传输信号,以得到对车机进行远程测试的车机界面画面,以使测试设备通过车机界面画面中获取的用户操作对车机进行远程测试。
进一步的,上述步骤A4的处理过程可以多种多样,以下再提供一种可选的处理方式,具体可以参见下述步骤A42-步骤A46的具体处理过程。
在步骤A42中,基于预设的视频压缩算法,对原始视频显示信号进行压缩处理得到重编码后的视频显示信号。
在实施中,以上述预设的视频压缩算法为H.264视频压缩算法为例,上述视频采集集成设备通过上述步骤A2的处理,得到原始视频显示信号之后,可以基于H.264视频压缩算法对上述原始视频显示信号进行压缩处理得到重编码后的视频显示信号。在步骤A44中,对经过重编码后的视频显示信号中的图像帧按照预设编号规则进行编号处理,得到整合了帧编号的图像帧,其中,整合了帧编号的图像帧中携带有编号信息。
其中,上述预设编号规则可以为按照视频显示信号中的图像帧的显示顺序进行编号的规则,相邻两个图像帧所对应的编号连续。
在实施中,上述视频采集集成设备通过上述步骤A42的处理得到重编码后的视频显示信号之后,可以对经过重编码后的视频显示信号中的图像帧按照预设编号规则进行编号处理,得到整合了帧编号的图像帧。
在步骤A46中,对整合了帧编号的图像帧按照预设组装规则进行处理,得到界面视频传输信号。
在实施中,上述视频采集集成设备通过上述步骤A44的处理得到整合了帧编号的图像帧后,可以按照视频显示信号中的图像帧的显示顺序进行组装处理,得到界面视频传输信号。
进一步的,上述步骤A44的处理过程可以多种多样,以下再提供一种可选的处理方式,具体可以参见下述步骤A442-步骤A444的具体处理过程。
在步骤A442中,将经过重新编码后的视频显示信号中的图像帧报文拆解为多个数据段,其中,数据段中包含报文头和报文数据。
在步骤A444中,将携带有编号的预设数据段插入至数据段之间,得到整合了帧编号的图像帧,其中,上述携带有编号的预设数据段中包括报文头和报文数据,该报文头使用的是H.264保留的数据值,上述报文数据中包含帧的序列号。
其中,上述S104的处理过程可以多种多样,以下再提供一种可选的处理方式,具体可以参见下述具体处理过程:基于获取的车机的视频显示信号,通过socket技术向测试设备提供对车机进行远程测试的车机界面画面,以使测试设备基于预先生成的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试。
由以上本发明实施例提供的技术方案可见,本发明实施例通过从车机主机的显示信号输出端口获取车机的视频显示信号,其中,视频显示信号用于控制车机的显示组件显示与视频显示信号相应的显示内容;然后,基于获取的车机的视频显示信号,向测试设备提供对车机进行远程测试的车机界面画面,以使测试设备基于预先生成的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试的方法,有效解决了由于通过摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确录制,进而导致通过上述方式录制的测试脚本无法实现对待测试的Linux汽车主机进行精确的自动化测试的问题,而本申请中由于测试设备所获取的车机界面画面是通过从车机主机的显示信号输出端口获取的,使得在测试设备中显示的车机界面画面与在待测试的车机显示屏幕上显示的车机界面画面可以按照1:1的比例进行显示,有效提高了工作人员通过测试设备在对待测试Linux汽车主机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
如图3所示,本发明实施例提供一种基于人工智能的软件自动化测试方法,该方法的执行主体可以为电子设备,该电子设备可以如终端设备,该终端设备可以如个人计算机等设备,也可以如手机、平板电脑等移动终端设备,该终端设备可以为用户使用的终端设备,该终端设备可以用于接收并显示车机界面画面,以及可以接收针对车机界面画面的输入操作,根据输入操作生成测试脚本。该方法具体可以包括以下步骤:
在步骤S202中,接收并显示车机界面画面,其中,车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的。
在实施中,以执行主体为终端设备,该终端设备为测试设备为例,上述测试设备在接收到上述车机界面画面后,可以采用预设算法对上述获取到的车机界面画面进行解码得到解码后的车机界面画面数据,然后,调用预设的视频显示工具或图像显示工具,对上述接收到的车机界面画面进行显示。
具体的,以上述车机界面画面为经过H.264视频压缩算法压缩处理后的车机界面画面为例,上述测试设备在接收到上述车机界面画面后,可以使用javascript的解码引擎解码H.264的车机界面画面,得到可以直接显示的YUV格式的界面数据,然后,测试设备的Web页面可以通过调用Canvas显示技术对上述接收到的车机界面画面进行显示。
在步骤S204中,接收针对车机界面画面的输入操作,根据输入操作生成测试脚本,其中,测试脚本用于指示车机执行相应的控制操作。
其中,上述输入操作可以包括通过鼠标点击进行的操作,通过鼠标滚动进行的滚动操作,通过拖动鼠标进行的滑动操作,或者,还可以是通过手指点击进行的触屏操作,通过手指在上述车机界面画面上滑动所进行的滑动操作,或者,还可以是通过键盘在上述车机界面画面对应的输入区域所进行的输入操作等。
在实施中,上述测试设备通过上述S202的处理显示车机界面画面后,可以接收用户针对上述车机界面画面所进行的输入操作,然后,根据上述接收到的输入操作生成测试脚本。
具体的,以上述输入操作为用户通过鼠标点击测试设备显示的车机界面画面所进行的输入操作为例,当用户需要录制测试脚本时,可以通过鼠标点击测试设备显示屏幕上显示的录制测试脚本按键,在测试设备接收到用户通过鼠标点击的该录制测试脚本按键的情况下,当用户通过鼠标点击测试设备显示的车机界面画面内的任意区域时,测试设备可以获取上述鼠标点击操作,并根据上述获取到的鼠标点击操作,识别出该鼠标操作所作用的当前车机界面画面的作用区域,以及该作用区域所对应的功能操作,根据该鼠标点击操作所对应的待执行的功能操作,生成测试脚本。例如,用户通过鼠标点击测试设备显示的车机界面画面内的音乐播放按键,测试设备在获取到用户在当前车机界面画面的点击操作,根据获取到的点击操作所作用的当前车机界面画面的作用区域,基于人工智能技术识别出该区域所对应的操作区域是音乐播放按键区域,即识别出该鼠标操作所要执行的功能为音乐播放操作,则根据该鼠标点击操作所对应的待执行的音乐播放操作,生成测试脚本。
或者,当用户需要录制测试脚本时,可以通过鼠标点击测试设备显示屏幕上显示的录制测试脚本按键,在测试设备接收到用户通过鼠标点击的该录制测试脚本按键的情况下,可以根据预先编写的测试用例的要求进行每一步的脚本编写,最终生成与测试用例相对应的测试脚本。例如,测试用例可以包括执行音乐播放测试和导航功能测试,则用户可以根据预先编写的测试用例,通过鼠标点击测试设备显示的车机界面画面内的音乐播放或导航功能按键所对应的区域,测试设备可以获取上述鼠标点击操作,并根据上述获取到的鼠标点击操作,识别出该鼠标操作所要执行的功能操作,根据该鼠标点击操作所对应的待执行的功能操作进行每一步的脚本编写,最终生成与测试用例相对应的测试脚本。
在步骤S206中,将测试脚本提供给待测试的车机,以使车机根据接收到的测试脚本执行相应的控制操作。
在实施中,上述测试设备通过上述S204的处理,根据输入操作生成测试脚本后,可以将上述测试脚本通过网络提供给待测试的车机,以使车机根据接收到的测试脚本执行相应的控制操作。
具体的,上述测试设备通过上述S204的处理,根据输入操作生成测试脚本后,可以将上述测试脚本通过网络提供给待测试的车机,上述待测试的车机接收并解析测试脚本,根据解析后的测试脚本语句,执行每一条脚本语句所对应的控制操作,并在执行每一条脚本语句的过程中生成过程数据和执行结果,然后,根据上述过程数据和执行结果生成测试报告。其中,上述过程数据可以包括操作日志数据等,执行结果可以包括测试成功或测试异常等。这样,无需用户操作,即可实现对待测试车机的自动化测试,用户只需根据测试设备上生成的测试报告即可完成对待测试车机的分析,在减少人力成本的同时,大大提高了车机测试的效率。
由以上本发明实施例提供的技术方案可见,本发明实施例通过接收并显示车机界面画面,以及接收针对车机界面画面的输入操作,根据输入操作生成测试脚本,然后,将测试脚本提供给待测试的车机,以使车机根据接收到的测试脚本执行相应的控制操作的方法,有效解决了由于通过摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确录制,进而导致通过上述方式录制的测试脚本无法实现对待测试的Linux汽车主机进行精确的自动化测试的问题,而本申请中由于测试设备所获取的车机界面画面是通过从车机主机的显示信号输出端口获取的,使得在测试设备中显示的车机界面画面与在待测试的车机显示屏幕上显示的车机界面画面可以按照1:1的比例进行显示,有效提高了工作人员通过测试设备在对待测试Linux汽车主机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
进一步的,如图4所示,上述S206的处理方法可以多种多样,以下再提供一种可选的处理方法,具体可参见下述S2062的具体处理方法。
在步骤S2062中,将测试脚本发送给AI服务器进行解析,以使AI服务器将解析后的测试脚本提供给待测试的车机,以使车机根据接收到的测试脚本执行相应的控制操作。
在实施中,测试设备通过上述S204的处理生成测试脚本后,可以根据预先获取到的AI服务器(Artificial Intelligence,人工智能)的地址信息,将上述生成的测试脚本发送给上述AI服务器,AI服务器接收上述测试脚本,并对接收到的上述测试脚本进行解析,得到测试脚本中所包含的每一条脚本语句,以及上述每一条脚本语句所包含的触发操作、目标信息和各目标信息所在当前车机界面画面的完整截图信息,然后,AI服务器可以基于预设的人工智能算法分析出上述目标信息所在当前车机界面画面的坐标信息,然后,AI服务器将解析后的目标信息所在当前车机界面画面的坐标以及与该坐标所对应的触发操作进行事件转化,转换为待测试车机触屏控制信号数据或ECU按键数据,然后,将上述转换后的待测试车机触屏控制信号数据或ECU按键数据提供给待测试车机,以使车机根据接收到的测试脚本执行相应的控制操作。
或者,测试设备通过上述S204的处理生成测试脚本后,可以根据预先获取到的AI服务器的地址信息,将上述生成的测试脚本发送给上述AI服务器,AI服务器接收上述测试脚本,并对接收到的上述测试脚本进行解析,得到测试脚本中所包含的每一条脚本语句,以及上述每一条脚本语句所包含的触发操作、目标信息和各目标信息所在当前车机界面画面的完整截图信息,然后,AI服务器可以通过预设AI算法分析出上述目标信息所在当前车机界面画面的坐标信息,将上述坐标信息发送至测试设备,然后,测试设备根据接收到的上述坐标信息以及与该坐标信息所对应的触发操作进行事件转化,转换为待测试车机触屏控制信号数据或ECU按键数据,然后,通过测试设备将上述转换后的待测试车机触屏控制信号数据或ECU按键数据提供给待测试车机,以使车机根据接收到的测试脚本执行相应的控制操作。
其中,上述目标信息可以是文字信息或图片信息等,上述AI服务器可以通过AI-OCR(OCR,Optical Recognition,光学字符识别)或者AI-以图找图的方式来确定目标信息,然后,根据确定的目标信息以及目标信息所在当前车机界面画面的完整截图信息,确定目标信息所在当前车机界面画面的坐标信息。
这样,通过上述基于人工智能的软件自动化测试方法,AI服务器可以对接收到的上述测试脚本进行分析,可以通过预设AI算法分析出上述目标信息所在当前车机界面画面的坐标信息,将上述坐标信息发送至测试设备,然后,测试设备根据接收到的上述坐标信息以及与该坐标信息所对应的触发操作进行事件转化,转换为待测试车机触屏控制信号数据或ECU按键数据,然后,通过测试设备将上述转换后的待测试车机触屏控制信号数据或ECU按键数据提供给待测试车机,以使待测试车机根据接收到的测试脚本执行相应的控制操作。由于上述自动化测试过程中在确定目标信息的过程中采用了人工智能的方法(如AI-OCR或者AI-以图找图),而采用人工智能方式可以有效提高目标信息定位的准确性,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
进一步的,如图5所示,上述S204的具体处理过程可以多种多样,以下再提供一种可选的处理方式,具体可以参见下述步骤S2042-步骤S2044的具体处理过程。
在步骤S2042中,接收针对车机界面画面的触发操作,确定触发操作的操作类型以及触发操作所对应的车机界面画面的触发区域。
其中,上述触发操作的操作类型可以包括通过鼠标点击进行的操作,通过鼠标滚动进行的滚动操作,通过拖动鼠标进行的滑动操作,或者,还可以是通过手指点击进行的触屏操作,通过手指在上述车机界面画面上滑动所进行的滑动操作等。
在实施中,上述测试设备通过上述S202的处理接收并显示车机界面画面后,可以接收用户针对该当前显示的车机界面画面的触发操作,然后,根据上述接收到的触发操作,确定触发操作的操作类型以及触发操作所对应的车机界面画面的触发区域。
在步骤S2044中,根据触发区域以及触发操作的操作类型生成测试脚本,其中,测试脚本用于指示车机执行触发区域所对应的控制操作。
在实施中,上述测试设备通过上述S2042的处理确定触发操作所对应的车机界面画面的触发区域后,可以根据上述触发区域以及触发操作的操作类型生成测试脚本。
进一步的,上述输入操作可以为用户通过输入设备输入的自然语言操作,上述S204的具体处理过程可以多种多样,以下再提供一种可选的处理方式,具体可以参见下述步骤C2至步骤C6的具体处理过程。在步骤C2中,接收针对车机界面画面的输入操作。
其中,上述输入操作可以是用户通过键盘等输入设备在上述车机界面画面中的输入区域所进行的输入操作,上述输入操作可以是输入文字操作。
在实施中,以上述输入操作为用户通过键盘等输入设备在上述车机界面画面中的输入区域所进行的输入操作为例,当用户需要录制测试脚本时,可以通过鼠标点击测试设备显示屏幕上显示的录制测试脚本按键,在测试设备接收到用户通过鼠标点击的该录制测试脚本按键的情况下,当用户通过鼠标点击测试设备显示的车机界面画面内的输入区域后,可以通过键盘等输入设备在上述输入区域内输入文字信息,测试设备可以接收上述针对车机界面画面的输入操作。
在步骤C4中,根据输入操作,确定输入操作对应的自然语言。
在实施中,测试设备通过上述步骤C2的处理,接收到上述针对车机界面画面的输入操作后,可以根据上述输入操作,确定输入操作所对应的自然语言。其中,上述自然语言可以是用户通过键盘输入的“点击系统设置”、“点击音乐播放”等。
在步骤C6中,根据自然语言所对应的内容生成测试脚本。
在实施中,测试设备通过上述步骤C4的处理,确定出输入操作对应的自然语言后,可以根据上述自然语言所对应的内容生成测试脚本。
具体的,测试设备通过上述步骤C4的处理,确定出输入操作对应的自然语言后,可以解析该自然语言所对应的内容,确定出上述内容所对应的目标信息,然后,根据该目标信息以及该目标信息所在当前车机界面画面,确定该目标信息所在当前车机界面画面的坐标信息,并根据上述坐标信息,或者,该坐标信息以及与该坐标信息所对应的触发操作(如输入的“点击”操作)生成测试脚本。
其中,上述目标信息可以是文字信息,也可以是图像信息。上述在测试设备确定出上述内容所对应的目标信息后,若确定出的目标信息是文字信息,则可以通过AI-OCR识别上述文字信息所在当前车机界面画面的区域,从而确定出该文字信息所在当前车机界面画面的坐标信息;若确定出的目标信息是图像信息,则可以通过AI-以图找图,识别上述图像信息所在当前车机界面画面的区域,从而确定出该图像信息所在当前车机界面画面的坐标信息。
进一步的,为了避免上述测试设备在接收上述车机界面画面的过程中出现丢帧,导致测试设备显示的车机界面画面中出现马赛克,从而影响用户对上述测试设备显示的车机界面画面所进行的触发操作,本说明书实施例提供的上述车机界面画面中的图像帧为携带有编号信息的图像帧,上述方法还可以包括下述步骤D2-步骤D6的具体处理过程。
在步骤D2中,判断接收到的车机界面画面中的当前图像帧编号与上一图像帧编号是否符合预设规则。
其中,上述预设规则可以为接收到的车机界面画面中的当前图像帧编号与上一图像帧编号连续。
在实施中,上述测试设备接收到上述车机界面画面后,可以对上述车机界面画面数据进行解码处理,得到当前图像帧所对应的图像帧编号,然后,比较当前图像帧编号与上一图像帧编号是否连续。
在步骤D4中,在接收到的当前图像帧编号与上一帧图像帧编号不满足预设规则的情况下,生成车机界面画面获取请求。
在实施中,若上述测试设备检测到在接收到的当前图像帧编号与上一帧图像帧编号不连续的情况下,生成车机界面画面获取请求。若上述测试设备检测到在接收到的当前图像帧编号与上一帧图像帧编号连续的情况下则正常显示。
在步骤D6中,将车机界面画面获取请求发送至视频采集集成平台。
在实施中,上述测试设备通过上述步骤D4的处理,若检测到在接收到的当前图像帧编号与上一帧图像帧编号不连续的情况下,生成车机界面画面获取请求,将上述车机界面画面获取请求发送至视频采集集成平台,以使上述视频采集集成平台接收到上述车机界面画面获取请求后,立即将当前压缩处理完的车机界面画面返回至上述测试设备,以避免由于丢帧现象所导致的车机界面画面出现马赛克,从而影响到用户针对测试设备当前显示的车机界面画面进行的测试操作。
由以上本发明实施例提供的技术方案可见,本发明实施例通过接收并显示车机界面画面,以及接收针对车机界面画面的输入操作,根据输入操作生成测试脚本,然后,将测试脚本提供给待测试的车机,以使车机根据接收到的测试脚本执行相应的控制操作的方法,有效解决了由于通过摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确录制,进而导致通过上述方式录制的测试脚本无法实现对待测试的Linux汽车主机进行精确的自动化测试的问题,而本申请中由于测试设备所获取的车机界面画面是通过从车机主机的显示信号输出端口获取的,使得在测试设备中显示的车机界面画面与在待测试的车机显示屏幕上显示的车机界面画面可以按照1:1的比例进行显示,有效提高了工作人员通过测试设备在对待测试Linux汽车主机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
如图6所示,本发明实施例提供一种基于人工智能的软件自动化测试方法,该方法的执行主体可以为电子设备,该电子设备可以如终端设备,该终端设备可以如个人计算机等设备,也可以如手机、平板电脑等移动终端设备,该终端设备可以为用户使用的终端设备,该终端设备可以用于获取车机界面画面及测试脚本,并根据接收的测试脚本模拟用户对所述车机界面画面的控制操作。该方法具体可以包括以下步骤:
在步骤S302中,获取车机界面画面,其中,车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的。
在步骤S304中,接收测试脚本,根据接收的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试,其中,测试脚本是通过接收针对车机界面画面的输入操作,根据输入操作生成的,测试脚本用于指示车机执行相应的控制操作。
由以上本发明实施例提供的技术方案可见,本发明实施例通过获取车机界面画面,其中,车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;然后,接收测试脚本,根据接收的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试的方法,有效解决了由于通过摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确录制,进而导致通过上述方式录制的测试脚本无法实现对待测试的Linux汽车主机进行精确的自动化测试的问题,而本申请中由于测试设备所获取的车机界面画面是通过从车机主机的显示信号输出端口获取的,使得在测试设备中显示的车机界面画面与在待测试的车机显示屏幕上显示的车机界面画面可以按照1:1的比例进行显示,有效提高了工作人员通过测试设备在对待测试Linux汽车主机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
进一步的,上述测试脚本包括目标信息以及与目标信息相对应的触发操作信息,如图7所示,上述步骤S304的处理过程可以多种多样,以下再提供一种可选的处理方法,具体可参见下述步骤S3042-步骤S3048的具体处理过程。
在步骤S3042中,接收测试脚本。
在步骤S3044中,根据接收的测试脚本,确定测试脚本中所包含的每一条脚本语句,以及目标信息所在的当前屏幕信息。
在步骤S3046中,确定目标信息在当前屏幕上的坐标信息。
在步骤S3048中,根据坐标信息,以及与坐标信息相对应的触发操作信息模拟用户对车机界面画面的控制操作,以对车机进行自动化测试。
由以上本发明实施例提供的技术方案可见,本发明实施例通过获取车机界面画面,其中,车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;然后,接收测试脚本,根据接收的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试的方法,有效解决了由于通过摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确录制,进而导致通过上述方式录制的测试脚本无法实现对待测试的Linux汽车主机进行精确的自动化测试的问题,而本申请中由于测试设备所获取的车机界面画面是通过从车机主机的显示信号输出端口获取的,使得在测试设备中显示的车机界面画面与在待测试的车机显示屏幕上显示的车机界面画面可以按照1:1的比例进行显示,有效提高了工作人员通过测试设备在对待测试Linux汽车主机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
对应上述实施例提供的基于人工智能的软件自动化测试方法,基于相同的技术构思,本发明实施例还提供了一种基于人工智能的软件自动化测试装置,图8为本发明实施例提供的基于人工智能的软件自动化测试装置的第一种模块组成示意图,该基于人工智能的软件自动化测试装置用于执行图1至图2描述的一种基于人工智能的软件自动化测试方法,如图8所示,该基于人工智能的软件自动化测试装置包括:
第一获取模块801,用于从车机主机的显示信号输出端口获取所述车机的视频显示信号,其中,所述视频显示信号用于控制所述车机的显示组件显示与所述视频显示信号相应的显示内容;
第一发送模块802,用于基于获取的所述车机的视频显示信号,向测试设备提供对所述车机进行远程测试的车机界面画面,以使所述测试设备基于预先生成的测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试。
可选地,所述第一获取模块,用于通过高速数据线HSD与所述车机主机的显示信号输出端口连接以获取所述车机的视频显示信号。
可选地,所述第一发送模块,包括:
第一处理单元,用于基于获取的所述车机的视频显示信号,对所述视频显示信号进行解序列化操作,得到原始视频显示信号;
压缩单元,用于基于预设的视频压缩算法,对所述原始视频显示信号进行压缩处理,得到界面视频传输信号;
发送单元,用于向测试设备提供对所述车机进行远程测试的界面视频传输信号,以得到对所述车机进行远程测试的车机界面画面。
可选地,所述压缩单元,包括:
压缩子单元,用于基于预设的视频压缩算法,对所述原始视频显示信号进行压缩处理得到重编码后的视频显示信号;
编号子单元,用于对经过重编码后的视频显示信号中的图像帧按照预设编号规则进行编号处理,得到整合了帧编号的图像帧,其中,所述整合了帧编号的图像帧中携带有编号信息;
处理子单元,用于对所述整合了帧编号的图像帧按照预设组装规则进行处理,得到界面视频传输信号。
可选地,所述编号子单元,用于:将经过重新编码后的视频显示信号中的图像帧报文拆解为多个数据段,其中,所述数据段中包含报文头和报文数据;
将携带有编号的预设数据段插入至所述数据段之间,得到整合了帧编号的图像帧。
可选地,所述第一发送模块,用于:基于获取的所述车机的视频显示信号,通过socket技术向测试设备提供对所述车机进行远程测试的车机界面画面。
由以上本发明实施例提供的技术方案可见,本发明实施例通过从车机主机的显示信号输出端口获取车机的视频显示信号,其中,视频显示信号用于控制车机的显示组件显示与视频显示信号相应的显示内容;然后,基于获取的车机的视频显示信号,向测试设备提供对车机进行远程测试的车机界面画面,以使测试设备基于预先生成的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试的方法,有效解决了由于通过摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确录制,进而导致通过上述方式录制的测试脚本无法实现对待测试的Linux汽车主机进行精确的自动化测试的问题,而本申请中由于测试设备所获取的车机界面画面是通过从车机主机的显示信号输出端口获取的,使得在测试设备中显示的车机界面画面与在待测试的车机显示屏幕上显示的车机界面画面可以按照1:1的比例进行显示,有效提高了工作人员通过测试设备在对待测试Linux汽车主机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
本发明实施例提供的基于人工智能的软件自动化测试装置能够实现上述基于人工智能的软件自动化测试方法对应的实施例中的各个过程,为避免重复,这里不再赘述。
需要说明的是,本发明实施例提供的基于人工智能的软件自动化测试装置与本发明实施例提供的基于人工智能的软件自动化测试方法基于同一发明构思,因此该实施例的具体实施可以参见前述基于人工智能的软件自动化测试方法的实施,重复之处不再赘述。
对应上述实施例提供的基于人工智能的软件自动化测试方法,基于相同的技术构思,本发明实施例还提供了一种基于人工智能的软件自动化测试装置,图9为本发明实施例提供的基于人工智能的软件自动化测试装置的第二种模块组成示意图,该基于人工智能的软件自动化测试装置用于执行图3-图5描述的基于人工智能的软件自动化测试方法,如图9所示,该基于人工智能的软件自动化测试装置包括:
处理模块901,用于接收并显示车机界面画面,其中,所述车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;
第一生成模块902,用于接收针对所述车机界面画面的输入操作,根据所述输入操作生成测试脚本,其中,所述测试脚本用于指示所述车机执行相应的控制操作;
第二发送模块903,用于将所述测试脚本提供给待测试的车机,以使所述车机根据接收到的所述测试脚本执行相应的控制操作。
可选地,所述第二发送模块,用于:将所述测试脚本发送给AI服务器进行解析,以使所述AI服务器将解析后的所述测试脚本提供给待测试的车机,以使所述车机根据接收到的所述测试脚本执行相应的控制操作。
可选地,所述第一生成模块,包括:
第二处理单元,用于接收针对所述车机界面画面的触发操作,确定所述触发操作的操作类型以及所述触发操作所对应的所述车机界面画面的触发区域;
第一生成单元,用于根据所述触发区域以及所述触发操作的操作类型生成测试脚本,其中,所述测试脚本用于指示所述车机执行所述触发区域所对应的控制操作。
可选地,所述输入操作为用户通过输入设备输入的自然语言操作,所述第一生成模块,包括:
第一接收单元,用于接收针对所述车机界面画面的输入操作;
第一确定单元,用于根据所述输入操作,确定所述输入操作对应的自然语言;
第二生成单元,用于根据所述自然语言所对应的内容生成测试脚本。
可选地,所述车机界面画面中的图像帧为携带有编号信息的图像帧;
所述装置还包括:
判断模块,用于判断接收到的车机界面画面中的当前图像帧编号与上一图像帧编号是否符合预设规则;
第二生成模块,用于在接收到的当前图像帧编号与上一帧图像帧编号不满足所述预设规则的情况下,生成车机界面画面获取请求;
第三发送模块,用于将所述车机界面画面获取请求发送至视频采集集成平台。
由以上本发明实施例提供的技术方案可见,本发明实施例通过接收并显示车机界面画面,以及接收针对车机界面画面的输入操作,根据输入操作生成测试脚本,然后,将测试脚本提供给待测试的车机,以使车机根据接收到的测试脚本执行相应的控制操作的方法,有效解决了由于通过摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确录制,进而导致通过上述方式录制的测试脚本无法实现对待测试的Linux汽车主机进行精确的自动化测试的问题,而本申请中由于测试设备所获取的车机界面画面是通过从车机主机的显示信号输出端口获取的,使得在测试设备中显示的车机界面画面与在待测试的车机显示屏幕上显示的车机界面画面可以按照1:1的比例进行显示,有效提高了工作人员通过测试设备在对待测试Linux汽车主机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
本发明实施例提供的基于人工智能的软件自动化测试装置能够实现上述基于人工智能的软件自动化测试方法对应的实施例中的各个过程,为避免重复,这里不再赘述。
需要说明的是,本发明实施例提供的基于人工智能的软件自动化测试装置与本发明实施例提供的基于人工智能的软件自动化测试方法基于同一发明构思,因此该实施例的具体实施可以参见前述基于人工智能的软件自动化测试方法的实施,重复之处不再赘述。
对应上述实施例提供的基于人工智能的软件自动化测试方法,基于相同的技术构思,本发明实施例还提供了一种基于人工智能的软件自动化测试装置,图10为本发明实施例提供的基于人工智能的软件自动化测试装置的第三种模块组成示意图,该基于人工智能的软件自动化测试装置用于执行图6-图7描述的基于人工智能的软件自动化测试方法,如图10所示,该基于人工智能的软件自动化测试装置包括:
第二获取模块1001,用于获取车机界面画面,其中,所述车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;
接收模块1002,用于接收测试脚本,根据接收的所述测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试,其中,所述测试脚本是通过接收针对所述车机界面画面的输入操作,根据所述输入操作生成的,所述测试脚本用于指示所述车机执行相应的控制操作。
可选地,所述测试脚本包括目标信息以及与所述目标信息相对应的触发操作信息;
所述接收模块,包括:
第二接收单元,用于接收测试脚本;
第三处理单元,用于根据接收的所述测试脚本,确定所述测试脚本中所包含的每一条脚本语句,以及所述目标信息所在的当前屏幕信息;
第二确定单元,用于确定所述目标信息在所述当前屏幕上的坐标信息;
控制单元,用于根据所述坐标信息,以及与所述坐标信息相对应的触发操作信息模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试。
由以上本发明实施例提供的技术方案可见,本发明实施例通过获取车机界面画面,其中,车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;然后,接收测试脚本,根据接收的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试的方法,有效解决了由于通过摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确录制,进而导致通过上述方式录制的测试脚本无法实现对待测试的Linux汽车主机进行精确的自动化测试的问题,而本申请中由于测试设备所获取的车机界面画面是通过从车机主机的显示信号输出端口获取的,使得在测试设备中显示的车机界面画面与在待测试的车机显示屏幕上显示的车机界面画面可以按照1:1的比例进行显示,有效提高了工作人员通过测试设备在对待测试Linux汽车主机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
本发明实施例提供的基于人工智能的软件自动化测试装置能够实现上述基于人工智能的软件自动化测试方法对应的实施例中的各个过程,为避免重复,这里不再赘述。
需要说明的是,本发明实施例提供的基于人工智能的软件自动化测试装置与本发明实施例提供的基于人工智能的软件自动化测试方法基于同一发明构思,因此该实施例的具体实施可以参见前述基于人工智能的软件自动化测试方法的实施,重复之处不再赘述。
对应上述实施例提供的基于人工智能的软件自动化测试方法,基于相同的技术构思,本发明实施例还提供了一种电子设备,该电子设备用于执行上述的基于人工智能的软件自动化测试方法,图11为实现本发明各个实施例的一种电子设备的结构示意图,如图11所示。电子设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器1101和存储器1102,存储器1102中可以存储有一个或一个以上存储应用程序或数据。其中,存储器1102可以是短暂存储或持久存储。存储在存储器1102的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对电子设备中的一系列计算机可执行指令。更进一步地,处理器1101可以设置为与存储器1102通信,在电子设备上执行存储器1102中的一系列计算机可执行指令。电子设备还可以包括一个或一个以上电源1103,一个或一个以上有线或无线网络接口1104,一个或一个以上输入输出接口1105,一个或一个以上键盘1106。
具体在本实施例中,电子设备包括有处理器、通信接口、存储器和通信总线;其中,所述处理器、所述通信接口以及所述存储器通过总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于执行所述存储器上所存放的程序,实现以下方法步骤:
从车机主机的显示信号输出端口获取所述车机的视频显示信号,其中,所述视频显示信号用于控制所述车机的显示组件显示与所述视频显示信号相应的显示内容;
基于获取的所述车机的视频显示信号,向测试设备提供对所述车机进行远程测试的车机界面画面,以使所述测试设备基于预先生成的测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试。
可选地,所述从车机主机的显示信号输出端口获取所述车机的视频显示信号,包括:
通过高速数据线HSD与所述车机主机的显示信号输出端口连接以获取所述车机的视频显示信号。
可选地,所述基于获取的所述车机的视频显示信号,向测试设备提供对所述车机进行远程测试的车机界面画面,包括:
基于获取的所述车机的视频显示信号,对所述视频显示信号进行解序列化操作,得到原始视频显示信号;
基于预设的视频压缩算法,对所述原始视频显示信号进行压缩处理,得到界面视频传输信号;
向测试设备提供对所述车机进行远程测试的界面视频传输信号,以得到对所述车机进行远程测试的车机界面画面。
可选地,所述基于预设的视频压缩算法,对所述原始视频显示信号进行压缩处理,得到界面视频传输信号,包括:
基于预设的视频压缩算法,对所述原始视频显示信号进行压缩处理得到重编码后的视频显示信号;
对经过重编码后的视频显示信号中的图像帧按照预设编号规则进行编号处理,得到整合了帧编号的图像帧,其中,所述整合了帧编号的图像帧中携带有编号信息;
对所述整合了帧编号的图像帧按照预设组装规则进行处理,得到界面视频传输信号。
可选地,所述对经过重编码后的视频显示信号中的图像帧按照预设编号规则进行编号处理,得到整合了帧编号的图像帧,包括:
将经过重新编码后的视频显示信号中的图像帧报文拆解为多个数据段,其中,所述数据段中包含报文头和报文数据;
将携带有编号的预设数据段插入至所述数据段之间,得到整合了帧编号的图像帧。
可选地,所述基于获取的所述车机的视频显示信号,向测试设备提供对所述车机进行远程测试的车机界面画面,包括:
基于获取的所述车机的视频显示信号,通过socket技术向测试设备提供对所述车机进行远程测试的车机界面画面。
由以上本发明实施例提供的技术方案可见,本发明实施例通过从车机主机的显示信号输出端口获取车机的视频显示信号,其中,视频显示信号用于控制车机的显示组件显示与视频显示信号相应的显示内容;然后,基于获取的车机的视频显示信号,向测试设备提供对车机进行远程测试的车机界面画面,以使测试设备基于预先生成的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试的方法,有效解决了由于通过摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确录制,进而导致通过上述方式录制的测试脚本无法实现对待测试的Linux汽车主机进行精确的自动化测试的问题,而本申请中由于测试设备所获取的车机界面画面是通过从车机主机的显示信号输出端口获取的,使得在测试设备中显示的车机界面画面与在待测试的车机显示屏幕上显示的车机界面画面可以按照1:1的比例进行显示,有效提高了工作人员通过测试设备在对待测试Linux汽车主机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
或者,上述电子设备中的处理器,用于执行所述存储器上所存放的程序,实现以下方法步骤:
接收并显示车机界面画面,其中,所述车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;
接收针对所述车机界面画面的输入操作,根据所述输入操作生成测试脚本,其中,所述测试脚本用于指示所述车机执行相应的控制操作;
将所述测试脚本提供给待测试的车机,以使所述车机根据接收到的所述测试脚本执行相应的控制操作。
可选地,所述将所述测试脚本提供给待测试的车机,以使所述车机根据接收到的所述测试脚本执行相应的控制操作,包括:
将所述测试脚本发送给AI服务器进行解析,以使所述AI服务器将解析后的所述测试脚本提供给待测试的车机,以使所述车机根据接收到的所述测试脚本执行相应的控制操作。
可选地,所述接收针对所述车机界面画面的输入操作,根据所述输入操作生成测试脚本,包括:
接收针对所述车机界面画面的触发操作,确定所述触发操作的操作类型以及所述触发操作所对应的所述车机界面画面的触发区域;
根据所述触发区域以及所述触发操作的操作类型生成测试脚本,其中,所述测试脚本用于指示所述车机执行所述触发区域所对应的控制操作。
可选地,所述输入操作为用户通过输入设备输入的自然语言操作,所述接收针对所述车机界面画面的输入操作,根据所述输入操作生成测试脚本,包括:
接收针对所述车机界面画面的输入操作;
根据所述输入操作,确定所述输入操作对应的自然语言;
根据所述自然语言所对应的内容生成测试脚本。
可选地,所述车机界面画面中的图像帧为携带有编号信息的图像帧;
所述方法还包括:
判断接收到的车机界面画面中的当前图像帧编号与上一图像帧编号是否符合预设规则;
在接收到的当前图像帧编号与上一帧图像帧编号不满足所述预设规则的情况下,生成车机界面画面获取请求;
将所述车机界面画面获取请求发送至视频采集集成平台。
由以上本发明实施例提供的技术方案可见,本发明实施例通过接收并显示车机界面画面,以及接收针对车机界面画面的输入操作,根据输入操作生成测试脚本,然后,将测试脚本提供给待测试的车机,以使车机根据接收到的测试脚本执行相应的控制操作的方法,有效解决了由于通过摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确录制,进而导致通过上述方式录制的测试脚本无法实现对待测试的Linux汽车主机进行精确的自动化测试的问题,而本申请中由于测试设备所获取的车机界面画面是通过从车机主机的显示信号输出端口获取的,使得在测试设备中显示的车机界面画面与在待测试的车机显示屏幕上显示的车机界面画面可以按照1:1的比例进行显示,有效提高了工作人员通过测试设备在对待测试Linux汽车主机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
或者,上述电子设备中的处理器,用于执行所述存储器上所存放的程序,实现以下方法步骤:
获取车机界面画面,其中,所述车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;
接收测试脚本,根据接收的所述测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试,其中,所述测试脚本是通过接收针对所述车机界面画面的输入操作,根据所述输入操作生成的,所述测试脚本用于指示所述车机执行相应的控制操作。
可选地,所述测试脚本包括目标信息以及与所述目标信息相对应的触发操作信息;
所述接收测试脚本,根据接收的所述测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试,包括:
接收测试脚本;
根据接收的所述测试脚本,确定所述测试脚本中所包含的每一条脚本语句,以及所述目标信息所在的当前屏幕信息;
确定所述目标信息在所述当前屏幕上的坐标信息;
根据所述坐标信息,以及与所述坐标信息相对应的触发操作信息模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试。
由以上本发明实施例提供的技术方案可见,本发明实施例通过获取车机界面画面,其中,车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;然后,接收测试脚本,根据接收的测试脚本模拟用户对车机界面画面的控制操作,以对车机进行自动化测试的方法,有效解决了由于通过摄像头获取的视频数据在测试设备中显示时会存在图像清晰度差、分辨率差异较大、图像细节缺失严重等问题,很容易导致在录制测试脚本的过程中,工作人员无法准确对待测试Linux汽车主机进行准确录制,进而导致通过上述方式录制的测试脚本无法实现对待测试的Linux汽车主机进行精确的自动化测试的问题,而本申请中由于测试设备所获取的车机界面画面是通过从车机主机的显示信号输出端口获取的,使得在测试设备中显示的车机界面画面与在待测试的车机显示屏幕上显示的车机界面画面可以按照1:1的比例进行显示,有效提高了工作人员通过测试设备在对待测试Linux汽车主机录制测试脚本的准确度,进而提高了基于上述预先生成的测试脚本来对Linux汽车主机进行自动化测试的准确度。
进一步地,对应上述实施例提供的基于人工智能的软件自动化测试方法,本说明书实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器1103执行时实现如上述基于人工智能的软件自动化测试方法实施例的各步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(RandomAccess Memory,简称RAM)、磁碟或者光盘等。
需要说明的是,本说明书中关于存储介质的实施例与本说明书中关于基于人工智能的软件自动化测试方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应的远程基于人工智能的软件自动化测试方法的实施,重复之处不再赘述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
可以理解的是,本说明书实施例描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(Application Specific Integrated Circuits,ASIC)、数字信号处理器(Digital SignalProcessing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(ProgrammableLogic Device,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本说明书所述功能的其它电子单元或其组合中。
对于软件实现,可通过执行本说明书实施例所述功能的模块(例如过程、函数等)来实现本说明书实施例所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
还需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本说明书的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本说明书各个实施例所述的方法。
上面结合附图对本说明书的实施例进行了描述,但是本说明书并不局限于上述的具体实施方式,上述具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本说明书的启示下,在不脱离本说明书宗旨和权利要求所保护的范围情况下,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。

Claims (18)

1.一种基于人工智能的软件自动化测试方法,其特征在于,所述方法包括:
从车机主机的显示信号输出端口获取所述车机的视频显示信号,其中,所述视频显示信号用于控制所述车机的显示组件显示与所述视频显示信号相应的显示内容;
基于获取的所述车机的视频显示信号,向测试设备提供对所述车机进行远程测试的车机界面画面,以使所述测试设备基于预先生成的测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试。
2.根据权利要求1所述的方法,其特征在于,所述从车机主机的显示信号输出端口获取所述车机的视频显示信号,包括:
通过高速数据线HSD与所述车机主机的显示信号输出端口连接以获取所述车机的视频显示信号。
3.根据权利要求1所述的方法,其特征在于,所述基于获取的所述车机的视频显示信号,向测试设备提供对所述车机进行远程测试的车机界面画面,包括:
基于获取的所述车机的视频显示信号,对所述视频显示信号进行解序列化操作,得到原始视频显示信号;
基于预设的视频压缩算法,对所述原始视频显示信号进行压缩处理,得到界面视频传输信号;
向测试设备提供对所述车机进行远程测试的界面视频传输信号,以得到对所述车机进行远程测试的车机界面画面。
4.根据权利要求3所述的方法,其特征在于,所述基于预设的视频压缩算法,对所述原始视频显示信号进行压缩处理,得到界面视频传输信号,包括:
基于预设的视频压缩算法,对所述原始视频显示信号进行压缩处理得到重编码后的视频显示信号;
对经过重编码后的视频显示信号中的图像帧按照预设编号规则进行编号处理,得到整合了帧编号的图像帧,其中,所述整合了帧编号的图像帧中携带有编号信息;
对所述整合了帧编号的图像帧按照预设组装规则进行处理,得到界面视频传输信号。
5.根据权利要求4所述的方法,其特征在于,所述对经过重编码后的视频显示信号中的图像帧按照预设编号规则进行编号处理,得到整合了帧编号的图像帧,包括:
将经过重新编码后的视频显示信号中的图像帧报文拆解为多个数据段,其中,所述数据段中包含报文头和报文数据;
将携带有编号的预设数据段插入至所述数据段之间,得到整合了帧编号的图像帧。
6.根据权利要求1所述的方法,其特征在于,所述基于获取的所述车机的视频显示信号,向测试设备提供对所述车机进行远程测试的车机界面画面,包括:
基于获取的所述车机的视频显示信号,通过socket技术向测试设备提供对所述车机进行远程测试的车机界面画面。
7.一种基于人工智能的软件自动化测试方法,其特征在于,所述方法包括:
接收并显示车机界面画面,其中,所述车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;
接收针对所述车机界面画面的输入操作,根据所述输入操作生成测试脚本,其中,所述测试脚本用于指示所述车机执行相应的控制操作;
将所述测试脚本提供给待测试的车机,以使所述车机根据接收到的所述测试脚本执行相应的控制操作。
8.根据权利要求7所述的方法,其特征在于,所述将所述测试脚本提供给待测试的车机,以使所述车机根据接收到的所述测试脚本执行相应的控制操作,包括:
将所述测试脚本发送给AI服务器进行解析,以使所述AI服务器将解析后的所述测试脚本提供给待测试的车机,以使所述车机根据接收到的所述测试脚本执行相应的控制操作。
9.根据权利要求7所述的方法,其特征在于,所述接收针对所述车机界面画面的输入操作,根据所述输入操作生成测试脚本,包括:
接收针对所述车机界面画面的触发操作,确定所述触发操作的操作类型以及所述触发操作所对应的所述车机界面画面的触发区域;
根据所述触发区域以及所述触发操作的操作类型生成测试脚本,其中,所述测试脚本用于指示所述车机执行所述触发区域所对应的控制操作。
10.根据权利要求7所述的方法,其特征在于,所述输入操作为用户通过输入设备输入的自然语言操作,所述接收针对所述车机界面画面的输入操作,根据所述输入操作生成测试脚本,包括:
接收针对所述车机界面画面的输入操作;
根据所述输入操作,确定所述输入操作对应的自然语言;
根据所述自然语言所对应的内容生成测试脚本。
11.根据权利要求7所述的方法,其特征在于,所述车机界面画面中的图像帧为携带有编号信息的图像帧;
所述方法还包括:
判断接收到的车机界面画面中的当前图像帧编号与上一图像帧编号是否符合预设规则;
在接收到的当前图像帧编号与上一帧图像帧编号不满足所述预设规则的情况下,生成车机界面画面获取请求;
将所述车机界面画面获取请求发送至视频采集集成平台。
12.一种基于人工智能的软件自动化测试方法,其特征在于,所述方法包括:
获取车机界面画面,其中,所述车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;
接收测试脚本,根据接收的所述测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试,其中,所述测试脚本是通过接收针对所述车机界面画面的输入操作,根据所述输入操作生成的,所述测试脚本用于指示所述车机执行相应的控制操作。
13.根据权利要求12所述的方法,其特征在于,所述测试脚本包括目标信息以及与所述目标信息相对应的触发操作信息;
所述接收测试脚本,根据接收的所述测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试,包括:
接收测试脚本;
根据接收的所述测试脚本,确定所述测试脚本中所包含的每一条脚本语句,以及所述目标信息所在的当前屏幕信息;
确定所述目标信息在所述当前屏幕上的坐标信息;
根据所述坐标信息,以及与所述坐标信息相对应的触发操作信息模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试。
14.一种基于人工智能的软件自动化测试装置,其特征在于,所述装置包括:
第一获取模块,用于从车机主机的显示信号输出端口获取所述车机的视频显示信号,其中,所述视频显示信号用于控制所述车机的显示组件显示与所述视频显示信号相应的显示内容;
第一发送模块,用于基于获取的所述车机的视频显示信号,向测试设备提供对所述车机进行远程测试的车机界面画面,以使所述测试设备基于预先生成的测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试。
15.一种基于人工智能的软件自动化测试装置,其特征在于,所述装置包括:
处理模块,用于接收并显示车机界面画面,其中,所述车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;
第一生成模块,用于接收针对所述车机界面画面的输入操作,根据所述输入操作生成测试脚本,其中,所述测试脚本用于指示所述车机执行相应的控制操作;
第二发送模块,用于将所述测试脚本提供给待测试的车机,以使所述车机根据接收到的所述测试脚本执行相应的控制操作。
16.一种基于人工智能的软件自动化测试装置,其特征在于,所述装置包括:
第二获取模块,用于获取车机界面画面,其中,所述车机界面画面为对从车机主机的显示信号输出端口获取的车机的视频显示信号经过处理后得到的;
接收模块,用于接收测试脚本,根据接收的所述测试脚本模拟用户对所述车机界面画面的控制操作,以对所述车机进行自动化测试,其中,所述测试脚本是通过接收针对所述车机界面画面的输入操作,根据所述输入操作生成的,所述测试脚本用于指示所述车机执行相应的控制操作。
17.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线;其中,所述处理器、所述通信接口以及所述存储器通过总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于执行所述存储器上所存放的程序,实现如权利要求1-6任一项所述的基于人工智能的软件自动化测试方法步骤;或者实现如权利要求7-11任一项所述的远程基于人工智能的软件自动化测试方法步骤;或者实现如权利要求12-13任一项所述的基于人工智能的软件自动化测试方法步骤。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-6任一项所述的基于人工智能的软件自动化测试方法步骤;或者实现如权利要求7-11任一项所述的基于人工智能的软件自动化测试方法步骤;或者实现如权利要求12-13任一项所述的基于人工智能的软件自动化测试方法步骤。
CN202011329228.7A 2020-11-24 2020-11-24 基于人工智能的软件自动化测试方法、装置及电子设备 Active CN112416775B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011329228.7A CN112416775B (zh) 2020-11-24 2020-11-24 基于人工智能的软件自动化测试方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011329228.7A CN112416775B (zh) 2020-11-24 2020-11-24 基于人工智能的软件自动化测试方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN112416775A true CN112416775A (zh) 2021-02-26
CN112416775B CN112416775B (zh) 2024-03-26

Family

ID=74778004

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011329228.7A Active CN112416775B (zh) 2020-11-24 2020-11-24 基于人工智能的软件自动化测试方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN112416775B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113079054A (zh) * 2021-06-07 2021-07-06 智道网联科技(北京)有限公司 车载终端的监控方法、装置及系统
CN113407455A (zh) * 2021-06-30 2021-09-17 四川虹美智能科技有限公司 智能白电产品的自动化测评方法及装置
CN114595147A (zh) * 2022-02-24 2022-06-07 珠海海奇半导体有限公司 一种基于智慧屏幕的调试系统及其测试方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140189647A1 (en) * 2012-12-31 2014-07-03 Nvidia Corporation System and method for debugging an executing general-purpose computing on graphics processing units (gpgpu) application
CN107766209A (zh) * 2017-10-31 2018-03-06 北京新能源汽车股份有限公司 中控自动化测试方法、装置、设备及计算机可读存储介质
CN108184109A (zh) * 2017-12-19 2018-06-19 北京经纬恒润科技有限公司 一种车载信息娱乐系统的测试平台及测试方法
CN109165162A (zh) * 2018-08-31 2019-01-08 北京车和家信息技术有限公司 一种车载系统的测试方法及相关设备
CN110765015A (zh) * 2019-10-24 2020-02-07 北京云聚智慧科技有限公司 一种对被测应用进行测试的方法和电子设备
CN111143215A (zh) * 2019-12-27 2020-05-12 南京英莫特信息科技有限公司 一种车载软件自动化测试方法
CN111737153A (zh) * 2020-08-03 2020-10-02 宁波均联智行科技有限公司 车机的自动化测试方法及系统
CN111818084A (zh) * 2020-07-23 2020-10-23 斑马网络技术有限公司 车机远程显示方法及服务器
CN111858286A (zh) * 2019-04-24 2020-10-30 上海博泰悦臻网络技术服务有限公司 车机测试装置及方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140189647A1 (en) * 2012-12-31 2014-07-03 Nvidia Corporation System and method for debugging an executing general-purpose computing on graphics processing units (gpgpu) application
CN107766209A (zh) * 2017-10-31 2018-03-06 北京新能源汽车股份有限公司 中控自动化测试方法、装置、设备及计算机可读存储介质
CN108184109A (zh) * 2017-12-19 2018-06-19 北京经纬恒润科技有限公司 一种车载信息娱乐系统的测试平台及测试方法
CN109165162A (zh) * 2018-08-31 2019-01-08 北京车和家信息技术有限公司 一种车载系统的测试方法及相关设备
CN111858286A (zh) * 2019-04-24 2020-10-30 上海博泰悦臻网络技术服务有限公司 车机测试装置及方法
CN110765015A (zh) * 2019-10-24 2020-02-07 北京云聚智慧科技有限公司 一种对被测应用进行测试的方法和电子设备
CN111143215A (zh) * 2019-12-27 2020-05-12 南京英莫特信息科技有限公司 一种车载软件自动化测试方法
CN111818084A (zh) * 2020-07-23 2020-10-23 斑马网络技术有限公司 车机远程显示方法及服务器
CN111737153A (zh) * 2020-08-03 2020-10-02 宁波均联智行科技有限公司 车机的自动化测试方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
YU CHAI等: "Design and Realization of Mobile Video Surveillance Car Based on ARM9 and Linux Platform", 《2018 2ND IEEE ADVANCED INFORMATION MANAGEMENT, COMMUNICATES, ELECTRONIC AND AUTOMATION CONTROL CONFERENCE (IMCEC)》, pages 1017 *
乔成等: "基于CNN的车载终端自动化测试系统设计与实现", 《无线电工程》, no. 10, pages 880 - 886 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113079054A (zh) * 2021-06-07 2021-07-06 智道网联科技(北京)有限公司 车载终端的监控方法、装置及系统
CN113407455A (zh) * 2021-06-30 2021-09-17 四川虹美智能科技有限公司 智能白电产品的自动化测评方法及装置
CN114595147A (zh) * 2022-02-24 2022-06-07 珠海海奇半导体有限公司 一种基于智慧屏幕的调试系统及其测试方法
CN114595147B (zh) * 2022-02-24 2023-05-09 珠海海奇半导体有限公司 一种基于智慧屏幕的调试系统及其测试方法

Also Published As

Publication number Publication date
CN112416775B (zh) 2024-03-26

Similar Documents

Publication Publication Date Title
CN107273280B (zh) 一种日志处理方法、装置、电子设备和存储介质
CN112416775A (zh) 基于人工智能的软件自动化测试方法、装置及电子设备
CN110764945B (zh) 一种崩溃日志处理方法、装置、设备和存储介质
US10713437B2 (en) Method and apparatus for identifying questionable line break characters in an application
CN109101228B (zh) 应用程序的执行方法和装置
CN109873735B (zh) H5页面的性能测试方法、装置和计算机设备
CN110489179B (zh) 获取调用栈栈帧函数签名的方法、装置、介质和设备
CN111291882A (zh) 一种模型转换的方法、装置、设备和计算机存储介质
CN110489159A (zh) 安装包精简方法及数据解析方法、装置、介质和设备
CN110990842A (zh) 一种小概率事件的复现方法、装置、存储介质及电子设备
CN110659210A (zh) 一种信息获取方法、装置、电子设备及存储介质
CN111241043A (zh) 一种多媒体文件的分享方法、终端及存储介质
CN110597704B (zh) 应用程序的压力测试方法、装置、服务器和介质
CN111475237A (zh) 菜单处理方法、装置、电子设备及存储介质
CN111708704A (zh) 一种云真机测试方法、装置、终端及存储介质
CN112861138A (zh) 软件安全性分析方法及分析装置、电子设备及存储介质
CN117033309A (zh) 一种数据转换方法、装置、电子设备及可读存储介质
CN106776277A (zh) 一种跨进程测试的方法、装置及电子设备
EP3519964B1 (en) Electronic apparatus for recording debugging information and control method thereof
CN105354075A (zh) 一种软硬件协同仿真的同步方法
CN102567126A (zh) 一种硬件现场复现的方法及装置
CN110262856B (zh) 一种应用程序数据采集方法、装置、终端及存储介质
CN112468779B (zh) 一种远程测试方法、装置及电子设备
CN113761402A (zh) 一种链接调试方法、装置、设备和存储介质
CN111061466A (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20240412

Address after: 100016 building 4, Dongfang Science Park, 52 Jiuxianqiao Road, Chaoyang District, Beijing

Patentee after: BEIJING TESTIN INFORMATION TECHNOLOGY Co.,Ltd.

Country or region after: China

Address before: 102425 building 31, 69 Yanfu Road, Fangshan District, Beijing

Patentee before: Beijing Yunju Intelligent Technology Co.,Ltd.

Country or region before: China