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

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

Info

Publication number
CN116860630A
CN116860630A CN202310820462.7A CN202310820462A CN116860630A CN 116860630 A CN116860630 A CN 116860630A CN 202310820462 A CN202310820462 A CN 202310820462A CN 116860630 A CN116860630 A CN 116860630A
Authority
CN
China
Prior art keywords
test
function
android
component
android device
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
CN202310820462.7A
Other languages
English (en)
Other versions
CN116860630B (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.)
Zhuhai Shixi Technology Co Ltd
Original Assignee
Zhuhai Shixi 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 Zhuhai Shixi Technology Co Ltd filed Critical Zhuhai Shixi Technology Co Ltd
Priority to CN202310820462.7A priority Critical patent/CN116860630B/zh
Publication of CN116860630A publication Critical patent/CN116860630A/zh
Application granted granted Critical
Publication of CN116860630B publication Critical patent/CN116860630B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/362Software debugging
    • G06F11/3628Software debugging of optimised code
    • 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/3684Test management for test design, e.g. generating new test cases
    • 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
    • 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
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明公开了一种设备测试方法、装置、存储介质及计算机设备,涉及设备测试领域,主要在于能够提高设备的测试效率和测试准确度。其中方法包括:响应于待测试设备的测试信号,确定所述待测试设备所属的设备类型;若所述设备类型为安卓设备,则利用所述安卓设备对应的安卓测试函数库对所述安卓设备中的各种安卓测试项目进行测试,得到所述安卓设备对应的测试结果;若所述待测试设备为部件,则利用所述部件对应的部件测试函数库对所述部件中的各种部件测试项目进行测试,得到所述部件对应的测试结果。本发明使用与设备测试场景。

Description

设备测试方法、装置、存储介质及计算机设备
技术领域
本发明涉及设备测试领域,尤其是涉及一种设备测试方法、装置、存储介质及计算机设备。
背景技术
为了保证设备的稳定运行,设备开发完成后,需要对设备进行测试。
目前,通常通过编写测试代码来对设备进行测试。然而,设备中包含多种测试项,这种测试方式,每针对一个测试项,就需要编写一套测试代码,导致设备的测试效率较低,与此同时,由于工作人员的技术水平参差不齐,会导致测试代码编写错误的情况,从而导致设备的测试准确度较低。
发明内容
本发明提供了一种设备测试方法、装置、存储介质及计算机设备,主要在于能够提高设备的测试效率和测试准确度。
根据本发明的第一个方面,提供一种设备测试方法,包括:
响应于待测试设备的测试信号,确定所述待测试设备所属的设备类型;
若所述设备类型为安卓设备,则利用所述安卓设备对应的安卓测试函数库对所述安卓设备中的各种安卓测试项目进行测试,得到所述安卓设备对应的测试结果;
若所述待测试设备为部件,则利用所述部件对应的部件测试函数库对所述部件中的各种部件测试项目进行测试,得到所述部件对应的测试结果。
根据本发明的第二个方面,提供一种设备测试装置,包括:
确定单元,用于响应于待测试设备的测试信号,确定所述待测试设备所属的设备类型;
安卓测试单元,用于若所述设备类型为安卓设备,则利用所述安卓设备对应的安卓测试函数库对所述安卓设备中的各种安卓测试项目进行测试,得到所述安卓设备对应的测试结果;
部件测试单元,用于若所述待测试设备为部件,则利用所述部件对应的部件测试函数库对所述部件中的各种部件测试项目进行测试,得到所述部件对应的测试结果。
根据本发明的第三个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以上设备测试方法。
根据本发明的第四个方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以上设备测试方法。
根据本发明提供的一种设备测试方法、装置、存储介质及计算机设备,与目前每进行一项测试需要编写一项测试代码的方式相比,本发明通过响应于待测试设备的测试信号,确定所述待测试设备所属的设备类型;若所述设备类型为安卓设备,则利用所述安卓设备对应的安卓测试函数库对所述安卓设备中的各种安卓测试项目进行测试,得到所述安卓设备对应的测试结果;若所述待测试设备为部件,则利用所述部件对应的部件测试函数库对所述部件中的各种部件测试项目进行测试,得到所述部件对应的测试结果,由此通过构建安卓设备对应的安卓测试函数库,以及部件对应的部件测试函数库,该安卓测试函数库中涵盖了对各种安卓设备中的各种通用测试项目进行测试的测试函数,该部件测试函数库中涵盖了对各种部件的各种通用测试项目进行测试的测试函数,若要对安卓设备进行测试时,直接调用安卓测试函数库中的测试函数对安卓设备进行测试,若要对部件进行测试,直接调用部件测试函数库中的测试函数对部件进行测试即可,避免工作人员预先编写测试代码所浪费的时间,从而本发明能够提高设备的测试效率,与此同时,也能够避免工作人员将测试代码编写错误的情况,从而本发明能够提高设备的测试准确度。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了本发明实施例提供的一种设备测试方法流程图;
图2示出了本发明实施例提供的另一种设备测试方法流程图;
图3示出了本发明实施例提供的一种设备测试装置的结构示意图;
图4示出了本发明实施例提供的另一种设备测试装置的结构示意图;
图5示出了本发明实施例提供的一种计算机设备的实体结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本申请提供的设备测试方法,可以应用于终端,例如终端可以是各种商业用途大平板、手机或电脑、普通消费平板电脑、智能电视、便携计算机终端,也可以是台式计算机等固定终端。
本申请实施例可以应用于计算机系统/服务器,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与计算机系统/服务器一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
计算机系统/服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
目前,编写测试代码来对设备进行测试方式,导致设备的测试效率较低,与此同时,由于工作人员技术水平的参差不齐,会导致设备的测试准确度较低。
为了解决上述问题,本发明实施例提供了一种设备测试方法,如图1所示,所述方法包括:
101、响应于待测试设备的测试信号,确定待测试设备所属的设备类型。
对于本发明实施例,测试信号中携带有待测试设备的设备标识,不同设备均有其对应的唯一标识,通过设备标识,能够确定待测试设备所属的设备类型,其中,设备类型可以包括安卓设备和部件,安卓设备包括手机、平板电脑、视频会议大屏等设备,部件可以为独立摄像头、整机内的摄像头模组、系统部件等包括部件功能的设备。
102、若设备类型为安卓设备,则利用安卓设备对应的安卓测试函数库对安卓设备中的各种安卓测试项目进行测试,得到安卓设备对应的测试结果。
其中,安卓测试函数库中存储着对各种安卓设备中各种测试项目进行测试的测试函数;安卓设备中的各种测试项目包括:刷机测试、开关机测试和基本功能测试,基本功能测试包括:安卓设备的wifi功能、蓝牙功能、截图功能、解锁功能、休眠功能、安装包的安装功能等测试。
对于本发明实施例,在确定待测试设备所属的设备类型之后,若待测试设备为安卓设备,则在测试配置表中确定安卓设备对应的测试函数库,并在数据库中获取安卓设备对应的安卓测试函数库,之后在安卓测试函数库中确定各种安卓测试项目对应的测试函数,并利用该测试函数自动对安卓设备中的各种测试项目进行测试。由此通过安卓测试函数库中各种测试函数来对安卓设备进行测试,能够避免人工编写测试代码所浪费的时间,从而本发明实施例能够提高安卓设备的测试效率,与此同时,也能够避免工作人员对测试代码编写错误的情况,从而本发明实施例能够提高安卓设备的测试准确度。
103、若待测试设备为部件,则利用部件对应的部件测试函数库对部件中的各种部件测试项目进行测试,得到部件对应的测试结果。
其中,若部件为独立摄像头,则各种测试项目包括:独立摄像头上下电功能测试、独立摄像头硬件接口功能测试、独立摄像头串口通信功能测试。
对于本发明实施例,在确定待测试设备所属的设备类型之后,若待测试设备为部件,则在测试配置表中确定部件对应的部件测试函数库,并在数据库中获取部件对应的部件测试函数库,之后在部件测试函数库中确定各种部件测试项目对应的测试函数,并利用该测试函数自动对部件中的各种测试项目进行测试。由此通过部件测试函数库中各种测试函数来对部件进行测试,能够避免人工编写测试代码所浪费的时间,从而本发明实施例能够提高部件的测试效率,与此同时,也能够避免工作人员对测试代码编写错误的情况,从而本发明实施例能够提高部件的测试准确度。
根据本发明提供的一种设备测试方法,与目前每进行一项测试需要编写一项测试代码的方式相比,本发明通过响应于待测试设备的测试信号,确定所述待测试设备所属的设备类型;若所述设备类型为安卓设备,则利用所述安卓设备对应的安卓测试函数库对所述安卓设备中的各种测试项目进行测试,得到所述安卓设备对应的测试结果;若所述待测试设备为部件,则利用所述部件对应的部件测试函数库对所述部件中的各种测试项目进行测试,得到所述部件对应的测试结果,由此通过构建安卓设备对应的安卓测试函数库,以及部件对应的部件测试函数库,该安卓测试函数库中涵盖了对各种安卓设备中的各种测试项目进行测试的测试函数,该部件测试函数库中涵盖了对各种部件中的各种测试项目进行测试的测试函数,若要对安卓设备进行测试时,直接调用安卓测试函数库中的测试函数对安卓设备进行测试,若要对部件进行测试,直接调用部件测试函数库中的测试函数对部件进行测试即可,避免工作人员预先编写测试代码所浪费的时间,从而本发明能够提高设备的测试效率,与此同时,也能够避免工作人员将测试代码编写错误的情况,从而本发明能够提高设备的测试准确度。
进一步的,为了更好的说明上述对设备进行测试的过程,作为对上述实施例的细化和扩展,本发明实施例提供了另一种设备测试方法,如图2所示,所述方法包括:
201、响应于待测试设备的测试信号,确定待测试设备所属的设备类型。
具体地,当服务器接收到待测试设备的测试信号后,解析测试信号中携带的设备标识,根据该设备标识,来确定待测试设备所属的设备类型,最终利用与该设备类型相对应的测试方式对待测试设备进行测试,本发明实施例通过为不同设备类型确定不同的测试方式,能够提高设备的测试准确度。
202、若设备类型为安卓设备,则在安卓测试函数库中确定刷机测试函数、开关机测试函数和基本功能测试函数。
其中,安卓测试函数库中包括对各种安卓设备的通用功能进行测试的安卓测试函数。
对于本发明实施例,在利用安卓测试函数库对安卓设备进行测试之前,首先需要构建安卓测试函数库,基于此,所述方法包括:封装不同安卓设备对应的各组通用测试逻辑代码,得到所述不同安卓设备对应的各组安卓测试函数;将所述各组安卓测试函数存储至所述安卓测试函数库中。
具体地,需要先封装不同安卓设备对应的各组测试逻辑代码,具体可以采用不同的语言对各组测试逻辑代码进行封装,哪种语言用起来方便,即可选用哪种语言进行封装,本发明实施例对封装语言不做具体限定,例如,可以采用JAVA或C++或Python等语言对不同安卓设备对应的各组测试逻辑代码进行封装,得到不同安卓设备对应的各组安卓测试函数,然后将各组安卓测试函数安卓测试函数库中。由此通过对各种安卓设备的通用功能进行测试的测试函数进行封装,后续若要对各种安卓设备进行测试时,直接调用封装后的测试函数对安卓设备进行测试即可,避免工作人员针对不同安卓设备的测试均需要重新编写测试代码所浪费的时间或者编写错误的情况,从而本发明实施例能够提高安卓设备的测试效率和测试准确度。
其中,安卓测试函数库中存储着针对安卓设备进行测试的各种测试函数,为了对安卓设备进行测试,首先需要确定安卓设备中的各种测试项目,之后根据安卓设备的各种测试项目,在安卓测试函数库中获取与各种测试项目相对应的测试函数,若安卓设备的各种测试项目为:刷机测试、开关机测试和基本功能测试,则针对系统刷机测试项目,在安卓测试函数库中获取刷机测试函数,针对开关机测试项目,在安卓测试函数库中获取开关机测试函数,针对基本功能测试,在安卓测试函数库中获取基本功能测试函数,之后利用上述各种测试函数对相应的测试项目进行测试,由此通过直接在测试函数库中调用各种测试函数来对安卓设备中的各种测试项进行测试,能够提高安卓设备的测试效率和测试准确度。
203、利用刷机测试函数对安卓设备的系统刷机功能进行测试,得到安卓设备对应的刷机测试结果。
对于本发明实施例,若要对安卓设备的系统刷机功能进行测试,则需要调用安卓测试函数库中的刷机测试函数来对安卓设备的系统刷机功能进行测试,基于此,步骤203具体包括:获取带有第一版本号的第一刷机固件和带有第二版本号的第二刷机固件;判断所述第一版本号是否与所述安卓设备的刷机前版本号一致;若所述第一版本号与所述刷机前版本号一致,则利用所述第二刷机固件对所述安卓设备进行刷机,得到第一刷机后的安卓设备;确定所述第一刷机后的安卓设备对应的第一刷机后版本号,若所述第一刷机后版本号与所述第二版本号一致,则确定所述安卓设备的系统刷机功能正常;若所述第一刷机后版本号与所述第二版本号不一致,则确定所述安卓设备的系统刷机功能异常,与此同时,若所述第一版本号与所述刷机前版本号不一致,则利用所述第一刷机固件对所述安卓设备进行刷机,得到第二刷机后的安卓设备;确定所述第二刷机后的安卓设备对应的第二刷机后版本号,若所述第二刷机后版本号与所述第一版本号一致,则确定所述安卓设备的系统刷机功能正常;若所述第二刷机后版本号与所述第一版本号不一致,则确定所述安卓设备的系统刷机功能异常。
具体地,准备两个版本的刷机固件,分别为带有第一版本号的刷机固件A和带有第二版本号的刷机固件B,获取测试服务器所连接安卓设备的序列号,并与之对应的Fastboot(一种更底层的刷机模式)号进行读写储存下来,每次都能保证设备的序列号与Fastboot号一一对应,获取安卓设备在刷机之前的版本号,如果刷机之前的版本号与A的版本号一致,则刷入固件B,如果不一致,则刷入固件A,刷机完成后,获取安卓设备对应的刷机后的版本号,如果刷机后的版本号和刷入的固件版本号一致,则刷机功能正常,如果刷机后的版本号和刷入的固件版本号不一致,则刷机功能异常,同时在后台记录刷机的日志信息以及刷机的过程信息,不断循环固件A和固件B对安卓设备进行刷机,直至刷机次数达到预设次数,若在多次刷机过程中刷机功能正常的次数大于预设阈值,则确定安卓设备的系统刷机功能正常,若在多次刷机过程中刷机功能正常的次数小于或等于预设阈值,则确定安卓设备的系统刷机功能异常。
204、利用开关机测试函数对安卓设备的开关机功能进行测试,得到安卓设备对应的开关机测试结果。
对于本发明实施例,若要对安卓设备的开关机功能进行测试,则需要调用安卓测试函数库中的开关机测试函数来对安卓设备的开关机功能进行测试,基于此,步骤204具体包括:建立所述安卓设备与程控继电器之间的连接;接收所述程控继电器对所述安卓设备进行供电的供电信号;在接收到所述供电信号的预设时间后,判断是否接收到所述安卓设备的开机成功的提示信息;若接收到所述开机成功的提示信息,则判定所述安卓设备的开机功能正常;若未接收到所述开机成功的提示信息,则判定所述安卓设备的开机功能异常;在接收到所述开机成功的提示信息后,响应于所述程控继电器对所述安卓设备的断电信号,判断是否接收到所述安卓设备的关机成功的提示信息;若接收到所述关机成功的提示信息,则判定所述安卓设备的关机功能正常;若未接收到所述关机成功的提示信息,则判定所述安卓设备的关机功能异常。
具体地,准备好程控继电器和安卓设备,将安卓设备的电源开关和供电线通过外接出来接入程控继电器里,其中,安卓设备的电源开关可以通过短接的方式模拟按下和释放的操作,从而实现安卓设备的开关机操作,供电线接入继电器从而通过程控控制安卓设备的上下电操作,程控继电器控制安卓设备供电,以及安卓设备电源开关的串口需要与安卓设备序列号进行对应,当程控继电器供电开关闭合,此时安卓设备上电,程控继电器电源开关闭合预设时间后,模拟安卓设备长按电源键启动,此时检查设备开机完成的标志信息(设备完全开机后,通过指令"adb shell dumpsys window|grep mCurrentFocus"可以获取到安卓设备当前所在的页面,判断当前页面中是否显示开机成功的提示信息"com.android.launcher3",如果显示开机成功的提示信息,则判定安卓设备已经成功启动,则在此次测试过程中可以判定安卓设备的开机功能正常,安卓设备成功启动后,程控继电器供电开关断开,即断开对安卓设备的供电,此时若接收到安卓设备关机成功的提示信息,则判定此时测试过程中安卓设备的关机功能正常,按照上述方式不断循环地对安卓设备进行开关机功能测试,若测试过程中开机功能正常的测试次数大于预设次数,则最终判定安卓设备开机功能正常,若开机功能正常的测试次数小于或等于预设次数,则最终判定安卓设备开机功能异常,若测试过程中关机功能正常的测试次数大于预设阈值,则最终判定安卓设备关机功能正常,若测试过程中关机功能正常的测试次数小于或等于预设阈值,则最终判定安卓设备关机功能异常。由此通过利用程控继电器来测试安卓设备的开关机功能,能够使安卓设备通过短接的方式模拟按下和释放的操作,从而能够通过最简易的方式实现开关机自动化控制,提高了测试便捷性和测试效率。
205、利用基本功能测试函数对安卓设备的各项基本功能进行测试,得到安卓设备对应的各项基本功能的测试结果。
其中,各项基本功能包括:安卓设备中各个APP的启动功能、安卓设备中的wifi功能、蓝牙功能、截图功能、解锁功能、休眠功能、安装包的安装功能等。
对于本发明实施例,若要对安卓设备中各个APP的启动功能进行测试,则需要调用安卓测试函数库中的基本功能测试函数对各个APP的启动功能进行测试,基于此,步骤205具体包括:获取所述安卓设备上各个APP图标的中心点坐标;响应于对所述中心点坐标的点击操作,记录所述点击操作对应的第一时间点;在对所述中心点坐标的点击操作后,记录各个APP完全启动后对应的第二时间点;将所述第二时间点与所述第一时间点相减,得到所述各个APP对应的启动时间;判断各所述启动时间是否小于预设时间阈值;若各所述启动时间小于预设时间阈值,则判定所述安卓设备中各个APP启动正常;若各所述启动时间大于或等于预设时间阈值,则判定所述安卓设备中各个APP启动异常。
其中,预设时间阈值是根据实际需求设定的数据。具体地,首先确定各个APP中是否存在未授权的APP,若存在未授权的APP,则对未授权的APP进行授权,在安卓设备的主界面中列出各种APP,不清楚各个APP的缓存,之后确定安卓设备界面上各个APP图标的中心点坐标,之后测试服务器控制对中心点坐标的点击操作,记录点击操作的第一时间点,点击中心点坐标后,各个APP便开始启动,待各个APP启动完成后,记录各个APP启动完成的第二时间点,将第二时间点与第一时间点之间的差值确定为各个APP对应的启动时间,若某个APP的启动时间小于预设时间阈值,则判定该APP的启动功能正常,若某个APP的启动时间大于或等于预设时间阈值,则判定该APP的启动功能异常。
进一步地,还可以通过打开蓝牙和关闭蓝牙来测试安卓设备的蓝牙功能是否正常,通过打开WiFi和关闭WiFi来测试安卓设备的WiFi功能是否正常;控制安卓设备对目标页面进行截图操作,得到安卓设备截取的测试图片,之后将目标页面对应的实际哈希值与测试图片对应的测试哈希值进行比较,若两者对应的哈希值相同,则判定安卓设备的截图功能正常,若两者之间的哈希值不同,则判定安卓设备的截图功能异常,同时对安卓设备的不休眠灭屏功能、解锁唤醒功能,批量安装安装包的功能进行测试。
进一步地,还需要对安卓设备的串口通信功能进行测试,基于此,所述方法包括:确定与所述安卓设备相对应的串口通信测试函数库;利用所述串口通信测试函数库中的测试函数对所述安卓设备的串口通信功能进行测试,得到所述安卓设备对应的串口通信测试结果。
其中,串口通信的测试项包括:数据传输完整性测试、数据传输时间测试、数据传输形式测试等。
具体地,可以预先封装针对串口通信进行测试的各组测试代码,得到各组串口通信测试函数,之后将各组测试函数存储至串口通信测试函数库中,若要对安卓设备的串口通信功能进行测试时,可以在串口通信测试函数库中获取相应的测试函数,最终利用该测试函数来对串口通信功能进行测试,由此通过对串口通信测试代码进行封装,下次进行串口通信功能测试时,可以直接在测试函数库中获取测试函数即可,避免人工编写测试代码所浪费的时间或者编写错误的情况,从而本发明实施例能够提高串口通信的测试效率和测试准确度。
进一步地,还可以对安卓设备的硬件接口功能进行测试,具体可以将不同安卓设备的硬件接口与程控继电器进行连接,通过程控继电器对硬件接口的通电和断掉操作,来测试硬件接口的通电功能。由此通过利用程控继电器来测试安卓设备的硬件接口功能,能够通过不同的开关闭合打开操作,来模拟不同场景下的测试需要,从而能够通过最简易的方式实现自动化控制,提高了测试便捷性和测试效率。
进一步地,安卓设备和部件还存在通用测试项目,为了对安卓设备中的通用测试项目进行测试,首先需要构建通用测试函数库,基于此,所述方法包括:封装所述安卓设备和部件共同对应的通用测试逻辑代码,得到所述安卓设备和所述部件共同对应的各组通用测试函数;将所述各组通用测试函数存储至所述安卓设备和部件共同对应的通用测试函数库中。
具体地,需要先封装安卓设备和部件共同对应的各组通用功能测试逻辑代码,具体可以采用不同的语言对各组通用功能测试逻辑代码进行封装,哪种语言用起来方便,即可选用哪种语言进行封装,本发明实施例对封装语言不做具体限定,例如,可以采用JAVA或C++或Python等语言对安卓设备和部件对应的各组通用功能测试逻辑代码进行封装,得到各组通用功能测试函数,然后将各组通用功能测试函数存储至通用测试函数库中。由此通过对各种安卓设备和各种部件的通用功能进行测试的测试函数进行封装,后续若要对各种安卓设备和部件的通用功能进行测试时,直接调用封装后的测试函数对通用功能进行测试即可,避免工作人员针对不同安卓设备和不同部件中的通用功能的测试均需要重新编写测试代码所浪费的时间或者编写错误的情况,从而本发明实施例能够提高安卓设备的测试效率和测试准确度。
进一步地,在构建完通用测试函数库后,可以利用通用测试函数库中的测试函数对安卓设备进行测试,基于此,所述方法包括:利用所述安卓设备和所述部件共同对应的通用测试函数库对所述安卓设备中的通用测试项目进行测试,得到所述安卓设备对应的通用测试结果。
其中,通用测试函数库中包括对安卓设备和部件进行相同功能测试的通用测试函数。安卓设备中的通用测试项目包括安卓设备的拍摄功能测试,在对安卓设备的拍摄功能进行测试之前,首先需要在安卓设备上安装摄像头模组,基于此,所述方法包括:确定所述安卓设备对应的安卓标识;基于所述安卓标识,对所述安卓设备进行解锁,并在解锁后的安卓设备上安装摄像功能插件对应的安装包;运行所述安装包,得到安装在所述安卓设备上的摄像功能插件。
具体地,对安卓设备的摄像功能进行测试的方法包括:在所述通用测试函数库中确定摄像功能测试函数;利用所述摄像功能测试函数对所述安卓设备的摄像功能进行测试,得到所述安卓设备对应的摄像功能测试结果。其中,具体利用摄像功能测试函数对安卓设备的摄像功能进行测试的方法包括:利用拍摄功能正常的摄像机对第一参照物进行拍照,得到所述第一参照物对应的第一实际图片;启动所述安卓设备的摄像功能对所述第一参照物进行拍照,得到所述第一参照物对应的第一测试图片;计算所述第一实际图像对应的第一实际哈希值,以及所述第一测试图片对应的第一测试哈希值;判断所述第一测试哈希值是否等于所述第一实际哈希值;若所述第一测试哈希值等于所述第一实际哈希值,则判定所述安卓设备的摄像功能正常。
其中,安卓标识可以为字符标识或者图标标识,只要通过安卓标识能够唯一确定该安卓设备,本发明实施例对安卓标识的形式不做具体限定;参照物可以为任意物体,如动物、植物等。
具体地,获取测试服务器所连接安卓设备的序列号,创建该安卓设备的控制对象,控制安卓设备解锁屏幕,当安卓设备屏幕解锁后,在安卓设备上安装摄像功能插件对应的apk(安装包),并对安装包进行授权运行,即可将摄像功能插件安装在安卓设备上。
进一步地,在安卓设备上安装完apk并运行后,需要调用通用测试函数库中的摄像功能测试函数对安卓设备的摄像功能进行测试,具体测试方法为,测试服务器控制安卓设备上的摄像功能插件开启,之后控制摄像功能插件对第一参照物进行拍照,得到测试图片,同时,采用摄像性能正常的摄像机对第一参照物进行拍照,得到第一参照物对应的实际图片,之后计算实际图片对应的实际哈希值,以及计算测试图片对应的测试哈希值,若实际哈希值等于测试哈希值,则确定该次测试时,安卓设备的拍摄功能正常,若实际哈希值不等于测试哈希值,则确定该次测试时,安卓设备的拍摄功能异常,重复上述测试过程,直至测试次数达到预设次数,若各次测试过程中测试功能正常的次数大于预设阈值,则最终判定安卓设备的摄像功能正常,若各次测试过程中测试功能正常的次数小于或等于预设阈值,则最终判定安卓设备的摄像功能异常。
进一步地,在对安卓设备的上述各种测试项进行测试时,为了获取测试过程和测试结果,便于后续分析,需要对上述各个测试项的测试过程和测试结果进行记录,基于此,所述方法包括:启动所述安卓设备对应的日志线程;在对所述安卓设备中的各种测试项目进行测试的过程中,调用所述安卓设备对应的日志线程来存储对所述安卓设备进行测试的测试信息。
具体地,在对安卓设备开始测试时,获取安卓设备的序列号,创建该安卓设备的控制对象,之后启动一个日志线程,并调用该日志线程来存储该安卓设备在测试过程中生成的日志信息以供后续分析,生成的日志信息与该安卓设备的序列号对应存储。
206、若待测试设备为部件,则利用部件对应的部件测试函数库对部件中的各种部件测试项目进行测试,得到部件对应的测试结果。
其中,部件测试函数库中包括对部件的独立功能进行测试的部件测试函数,若部件为独立摄像头模组,则各种测试项包括:独立摄像头模组上下电功能测试、独立摄像头模组硬件接口功能测试、独立摄像头模组串口通信功能测试等。
具体地,因为不同类型设备对应的测试项可能会不同,因此为了避免测试混乱,不同设备对应不同的测试函数库,安卓设备对应安卓测试函数库,部件对应部件测试函数库,若要对部件中的各种测试项进行测试,则需要调用部件测试函数库中的相应测试函数来对测试项进行测试,基于此,首先需要构建部件测试函数库,具体构建方法包括:封装不同部件对应的各组通用独立部件测试逻辑代码,得到所述不同部件对应的各组部件测试函数;将所述各组部件测试函数存储至所述部件测试函数库中。
具体地,需要先封装不同部件对应的各组测试逻辑代码,具体可以采用不同的语言对各组测试逻辑代码进行封装,哪种语言用起来方便,即可选用哪种语言进行封装,本发明实施例对封装语言不做具体限定,例如,可以采用JAVA或C++或Python等语言对不同部件对应的各组测试逻辑代码进行封装,得到不同部件对应的各组部件测试函数,然后将各组部件测试函数分别存储至不同部件对应的部件测试函数库中。由此通过对各种部件的通用功能进行测试的测试函数进行封装,后续若要对各种部件进行测试时,直接调用封装后的测试函数对部件进行测试即可,避免工作人员针对不同部件的测试均需要重新编写测试代码所浪费的时间或者编写错误的情况,从而本发明实施例能够提高部件的测试效率和测试准确度。
其中,若部件为独立摄像头,则部件的各种测试项包括独立摄像头上下电功能测试、独立摄像头硬件接口功能测试、独立摄像头串口通信功能测试。进一步地,在构建完部件对应的部件测试函数库后,需要根据部件测试函数库来对部件进行测试,基于此,步骤206具体包括:在所述部件测试函数库中确定独立摄像头上下电测试函数、独立摄像头硬件接口测试函数、独立摄像头串口通信测试函数;利用所述独立摄像头上下电测试函数对所述独立摄像头上下电功能进行测试,得到所述独立摄像头对应的独立摄像头上下电功能测试结果;利用所述独立摄像头硬件接口测试函数对所述独立摄像头硬件接口功能进行测试,得到所述独立摄像头对应的独立摄像头硬件接口功能测试结果;利用所述独立摄像头串口通信测试函数对所述独立摄像头串口通信功能进行测试,得到所述独立摄像头对应的独立摄像头串口通信功能测试结果。
其中,部件测试函数库中存储着针对部件进行测试的各种测试函数,为了对部件进行测试,首先需要确定部件中的各种测试项目,之后根据部件的各种测试项目,在部件测试函数库中获取与各种测试项目相对应的测试函数,若部件的各种测试项目为:独立摄像头上下电功能测试项、硬件接口功能测试项、串口通信功能测试项,则针对独立摄像头上下电功能测试项,在部件测试函数库中获取独立摄像头上下电测试函数,针对硬件接口功能测试项,在部件测试函数库中获取硬件接口测试函数,针对系串口通信功能测试项,在部件测试函数库中获取串口通信测试函数,之后利用上述各种测试函数对相应的测试项目进行测试,由此通过直接在测试函数库中调用各种测试函数来对部件中的各种测试项进行测试,能够提高部件的测试效率和测试准确度。具体地,若要利用独立摄像头上下电测试函数对摄像头上下电功能进行测试,则具体的测试方法包括:建立程控继电器与所述独立摄像头之间的连接;响应于所述程控继电器对所述独立摄像头的供电信号,判断是否接收到所述独立摄像头上电成功的提示信息;若接收到所述上电成功的提示信息,则判定所述独立摄像头的上电功能正常;若未接收到所述上电成功的提示信息,则判定所述独立摄像头的上电功能异常;在接收到所述上电成功的提示信息后,响应于所述程控继电器对所述独立摄像头的断电信号,判断是否接收到所述独立摄像头下电成功的提示信息;若接收到所述下电成功的提示信息,则判定所述独立摄像头的下电功能正常;若未接收到所述下电成功的提示信息,则判定所述独立摄像头的下电功能异常。
具体地,将独立摄像头接入程控继电器开关里,控制程控继电器对独立摄像头进行供电,此时判断独立摄像头是否上电,若独立摄像头上电,则判定独立摄像头上电功能正常,若独立摄像头未上电,则判定独立摄像头上电功能异常,在独立摄像头正常上电的情况下,控制程控继电器对独立摄像头进行断电操作,此时判断独立摄像头是否下电,若独立摄像头下电,则判定独立摄像头下电功能正常,若独立摄像头还处于上电状态,则判定独立摄像头下电功能异常,与此同时,上述上电和下电操作可以执行预设次数,最终若上电功能正常的次数大于预设阈值,则判定独立摄像头上电功能正常,若上电功能正常的次数小于或等于预设阈值,则判定独立摄像头上电功能异常,同时若下电功能正常的次数大于预设阈值,则判定独立摄像头下电功能正常,若下电功能正常的次数小于或等于预设阈值,则判定独立摄像头下电功能异常。由此通过利用程控继电器来测试部件的上下电功能,而能够通过最简易的方式实现对部件上下电的自动化控制,提高了测试便捷性和测试效率。
进一步地,若要利用硬件接口测试函数对独立摄像头硬件接口功能进行测试,则具体的测试方法包括:建立程控继电器与所述独立摄像头硬件接口的连接;响应于所述程控继电器对所述独立摄像头硬件接口的供电信号,向所述独立摄像头硬件接口中输入测试参数,并接收所述独立摄像头硬件接口输出的与所述测试参数相对应的测试返回值;确定所述测试参数对应的实际返回值;判断所述测试返回值是否与所述实际返回值相匹配;若所述测试返回值与所述实际返回值相匹配,则确定所述独立摄像头硬件接口功能正常;若所述测试返回值与所述实际返回值不相匹配,则确定所述独立摄像头硬件接口功能异常。
具体地,首先控制程控继电器对独立摄像头硬件接口进行供电操作,在硬件接口通电的情况下,向硬件接口中传入信息(测试参数),之后接收硬件接口回传回来的针对该传入信息的返回值(测试返回值),之后判断传入信息对应的实际返回值是否与测试返回值相同,若相同,则判定独立摄像头的硬件接口功能正常,若实际返回值与测试返回值不同,则判定独立摄像头的硬件接口功能异常。由此通过利用程控继电器来测试独立摄像头的硬件接口功能,能够通过不同的开关闭合打开操作,来模拟不同场景下的测试需要,从而能够通过最简易的方式实现对独立摄像头自动化控制,提高了测试便捷性和测试效率。
进一步地,若要利用串口通信测试函数对独立摄像头的串口通信功能进行测试,则具体的测试方法包括:确定与所述独立摄像头相对应的串口通信测试函数库;利用所述独立摄像头对应的串口通信测试函数库中的测试函数对所述独立摄像头串口通信功能进行测试,得到所述独立摄像头串口通信功能测试结果。
其中,串口通信的测试项包括:数据传输完整性测试、数据传输时间测试、数据传输形式测试等。
具体地,串口通信测试函数库中包含各种针对独立摄像头串口通信进行测试的测试函数,如数据传输完整性测试函数、数据传输时间测试函数和数据传输形式测试函数等,若要对独立摄像头的串口通信功能进行测试,则可以在测试函数库中获取相应的测试函数,并利用该测试函数来对串口通信功能进行测试。
进一步地,安卓设备和部件还存在通用测试项目,为了对部件中的通用测试项目进行测试,所述方法还包括:利用所述安卓设备和所述部件共同对应的通用测试函数库对所述部件中的通用测试项目进行测试,得到所述部件对应的通用测试结果。
其中,通用测试函数库中包括对安卓设备和部件进行相同功能测试的通用测试函数,部件中的通用测试项目包括独立摄像头拍摄功能测试,具体利用通用测试函数库对部件中的通用测试项目进行测试的方法包括:在所述通用测试函数库中获取摄像功能测试函数;利用所述摄像功能测试函数对所述独立摄像头的拍摄功能进行测试,得到所述独立摄像头对应的摄像头拍摄功能测试结果。其中,利用摄像功能测试函数对独立摄像头的拍摄功能进行测试的方法包括:利用拍摄功能正常的摄像机对第二参照物进行拍照,得到所述第二参照物对应的第二实际图片;利用所述独立摄像头对所述第二参照物进行拍照,得到所述第二参照物对应的第二测试图片;计算所述第二实际图像对应的第二实际哈希值,以及所述第二测试图片对应的第二测试哈希值;判断所述第二测试哈希值是否等于所述第二实际哈希值;若所述第二测试哈希值等于所述第二实际哈希值,则判定所述独立摄像头的拍摄功能正常。
具体地,测试服务器控制独立摄像头开启,之后控制独立摄像头对第二参照物进行拍照,得到利用独立摄像头拍摄得到的测试图片,同时,采用摄像性能正常的摄像机对第二参照物进行拍照,得到第二参照物对应的实际图片,之后计算实际图片对应的实际哈希值,以及计算测试图片对应的测试哈希值,若实际哈希值等于测试哈希值,则确定该次测试时,部件对应的独立摄像头的拍摄功能正常,若实际哈希值不等于测试哈希值,则确定该次测试时,独立摄像头的拍摄功能异常,重复上述测试过程,直至测试次数达到预设次数,若各次测试过程中测试功能正常的次数大于预设阈值,则最终判定部件对应的独立摄像头拍摄功能正常,若各次测试过程中测试功能正常的次数小于或等于预设阈值,则最终判定独立摄像头拍摄功能异常。
进一步地,部件还可以为独立摄像头模组,摄像头模组包括RGB摄像头模组和Tof(Time of Flight,红外景深传感器)摄像头模组,RGB摄像头模组包括:12M摄像头模组、13M摄像头模组、18M摄像头模组等,具体对独立摄像头模组进行测试的方式与对独立摄像头进行测试的方式相同,本发明实施例在此不做重复叙述。同时,也可以将独立摄像头模组安装在安卓设备上,以此来实现对整机的摄像功能进行测试。
进一步地,在对部件的上述各种测试项进行测试时,为了获取测试过程和测试结果,便于后续分析,需要对上述各个测试项的测试过程和测试结果进行记录,基于此,所述方法包括:启动所述部件对应的日志线程;在对所述部件中的各种测试项目进行测试的过程中,调用所述部件对应的日志线程来存储对所述部件进行测试的测试信息。
具体地,在对部件开始测试时,获取部件的序列号,创建该部件的控制对象,之后启动一个日志线程,并调用该日志线程来存储该部件在测试过程中生成的日志信息以供后续分析,生成的日志信息与该部件的序列号对应存储。
根据本发明提供的另一种设备测试方法,与目前每进行一项测试需要编写一项测试代码的方式相比,本发明通过响应于待测试设备的测试信号,确定所述待测试设备所属的设备类型;若所述设备类型为安卓设备,则利用所述安卓设备对应的安卓测试函数库对所述安卓设备中的各种测试项目进行测试,得到所述安卓设备对应的测试结果;若所述待测试设备为部件,则利用所述部件对应的部件测试函数库对所述部件中的各种测试项目进行测试,得到所述部件对应的测试结果,由此通过构建安卓设备对应的安卓测试函数库,以及部件对应的部件测试函数库,该安卓测试函数库中涵盖了对各种安卓设备中的各种通用测试项目进行测试的测试函数,该部件测试函数库中涵盖了对各种部件的各种通用测试项目进行测试的测试函数,若要对安卓设备进行测试时,直接调用安卓测试函数库中的测试函数对安卓设备进行测试,若要对部件进行测试,直接调用部件测试函数库中的测试函数对部件进行测试即可,避免工作人员预先编写测试代码所浪费的时间,从而本发明能够提高设备的测试效率,与此同时,也能够避免工作人员将测试代码编写错误的情况,从而本发明能够提高设备的测试准确度。
进一步地,作为图1的具体实现,本发明实施例提供了一种设备测试装置,如图3所示,所述装置包括:确定单元31、安卓测试单元32和部件测试单元33。
所述确定单元31,可以用于响应于待测试设备的测试信号,确定所述待测试设备所属的设备类型。
所述安卓测试单元32,可以用于若所述设备类型为安卓设备,则利用所述安卓设备对应的安卓测试函数库对所述安卓设备中的各种安卓测试项目进行测试,得到所述安卓设备对应的测试结果。
所述部件测试单元33,可以用于若所述待测试设备为部件,则利用所述部件对应的部件测试函数库对所述部件中的各种部件测试项目进行测试,得到所述部件对应的测试结果。
在具体应用场景中,为了对安卓设备与部件中的通用功能进行测试,所述安卓测试单元32,还可以用于利用所述安卓设备和所述部件共同对应的通用测试函数库对所述安卓设备中的通用测试项目进行测试,得到所述安卓设备对应的通用测试结果。
所述部件测试单元33,还可以用于利用所述安卓设备和所述部件共同对应的通用测试函数库对所述部件中的通用测试项目进行测试,得到所述部件对应的通用测试结果。
在具体应用场景中,所述所述安卓测试函数库中包括对各种安卓设备的通用功能进行测试的安卓测试函数,所述部件测试函数库中包括对部件的独立功能进行测试的部件测试函数,所述通用测试函数库中包括对安卓设备和部件进行相同功能测试的通用测试函数。
在具体应用场景中,为了构建安卓测试函数库,如图4所示,所述装置还包括封装单元34和存储单元35。
所述封装单元34,可以用于封装不同安卓设备对应的各组通用测试逻辑代码,得到所述不同安卓设备对应的各组安卓测试函数。
所述存储单元35,可以用于将所述各组安卓测试函数存储至所述不同安卓设备对应的安卓测试函数库中。
在具体应用场景中,为了构建部件测试函数库,所述封装单元34,还可以用于封装不同部件对应的各组通用独立部件测试逻辑代码,得到所述不同部件对应的各组部件测试函数。
所述存储单元35,还可以用于将所述各组部件测试函数存储至所述部件测试函数库中。
在具体应用场景中,为了构建通用测试函数库,所述封装单元34,还可以用于封装所述安卓设备和部件共同对应的通用测试逻辑代码,得到所述安卓设备和所述部件共同对应的各组通用测试函数。
所述存储单元35,还可以用于将所述各组通用测试函数存储至所述安卓设备和部件共同对应的通用测试函数库中。
在具体应用场景中,为了利用安卓设备对应的安卓测试函数库对安卓设备中的各种测试项目进行测试,所述安卓测试单元32,包括第一确定模块321和第一测试模块322。
所述第一确定模块321,可以用于在所述安卓测试函数库中确定刷机测试函数、开关机测试函数和基本功能测试函数。
所述第一测试模块322,可以用于利用所述刷机测试函数对所述安卓设备的系统刷机功能进行测试,得到所述安卓设备对应的刷机测试结果。
所述第一测试模块322,还可以用于利用所述开关机测试函数对所述安卓设备的开关机功能进行测试,得到所述安卓设备对应的开关机测试结果。
所述第一测试模块322,还可以用于利用所述基本功能测试函数对所述安卓设备的各项基本功能进行测试,得到所述安卓设备对应的各项基本功能的测试结果。
在具体应用场景中,为了对系统刷机功能进行测试,所述第一测试模块322,具体可以用于获取带有第一版本号的第一刷机固件和带有第二版本号的第二刷机固件;判断所述第一版本号是否与所述安卓设备的刷机前版本号一致;若所述第一版本号与所述刷机前版本号一致,则利用所述第二刷机固件对所述安卓设备进行刷机,得到第一刷机后的安卓设备;确定所述第一刷机后的安卓设备对应的第一刷机后版本号,若所述第一刷机后版本号与所述第二版本号一致,则确定所述安卓设备的系统刷机功能正常;若所述第一刷机后版本号与所述第二版本号不一致,则确定所述安卓设备的系统刷机功能异常。
在具体应用场景中,为了对系统刷机功能进行测试,所述第一测试模块322,具体可以用于若所述第一版本号与所述刷机前版本号不一致,则利用所述第一刷机固件对所述安卓设备进行刷机,得到第二刷机后的安卓设备;确定所述第二刷机后的安卓设备对应的第二刷机后版本号,若所述第二刷机后版本号与所述第一版本号一致,则确定所述安卓设备的系统刷机功能正常;若所述第二刷机后版本号与所述第一版本号不一致,则确定所述安卓设备的系统刷机功能异常。
在具体应用场景中,为了对安卓设备的开关机功能进行测试,所述第一测试模块322,具体可以用于建立所述安卓设备与程控继电器之间的连接;接收所述程控继电器对所述安卓设备进行供电的供电信号;在接收到所述供电信号的预设时间后,判断是否接收到所述安卓设备的开机成功的提示信息;若接收到所述开机成功的提示信息,则判定所述安卓设备的开机功能正常;若未接收到所述开机成功的提示信息,则判定所述安卓设备的开机功能异常;在接收到所述开机成功的提示信息后,响应于所述程控继电器对所述安卓设备的断电信号,判断是否接收到所述安卓设备的关机成功的提示信息;若接收到所述关机成功的提示信息,则判定所述安卓设备的关机功能正常;若未接收到所述关机成功的提示信息,则判定所述安卓设备的关机功能异常。
在具体应用场景中,为了对安卓设备中的各个APP的启动功能进行测试,所述第一测试模块322,具体可以用于获取所述安卓设备上各个APP图标的中心点坐标;响应于对所述中心点坐标的点击操作,记录所述点击操作对应的第一时间点;在对所述中心点坐标的点击操作后,记录各个APP完全启动后对应的第二时间点;将所述第二时间点与所述第一时间点相减,得到所述各个APP对应的启动时间;判断各所述启动时间是否小于预设时间阈值;若各所述启动时间小于预设时间阈值,则判定所述安卓设备中各个APP启动正常;若各所述启动时间大于或等于预设时间阈值,则判定所述安卓设备中各个APP启动异常。
在具体应用场景中,所述各项基本功能还包括:所述安卓设备的wifi功能、蓝牙功能、截图功能、解锁功能、休眠功能、安装包的安装功能。
在具体应用场景中,为了对安卓设备的串口通信功能进行测试,所述确定单元31,还可以用于确定与所述安卓设备相对应的串口通信测试函数库。
所述安卓测试单元32,还可以用于利用所述串口通信测试函数库中的测试函数对所述安卓设备的串口通信功能进行测试,得到所述安卓设备对应的串口通信测试结果。
在具体应用场景中,为了对安卓设备与部件的通用功能进行测试,所述安卓测试单元32,具体可以用于在所述通用测试函数库中确定摄像功能测试函数;利用所述摄像功能测试函数对所述安卓设备的摄像功能进行测试,得到所述安卓设备对应的摄像功能测试结果。
在具体应用场景中,为了安卓设备中的摄像头模组的拍摄功能进行测试,所述安卓测试单元32,具体可以用于确定所述安卓设备对应的安卓标识;基于所述安卓标识,对所述安卓设备进行解锁,并在解锁后的安卓设备上安装摄像功能插件对应的安装包;运行所述安装包,得到安装在所述安卓设备上的摄像功能插件;利用拍摄功能正常的摄像机对第一参照物进行拍照,得到所述第一参照物对应的第一实际图片;启动所述安卓设备的摄像功能对所述第一参照物进行拍照,得到所述第一参照物对应的第一测试图片;计算所述第一实际图像对应的第一实际哈希值,以及所述第一测试图片对应的第一测试哈希值;判断所述第一测试哈希值是否等于所述第一实际哈希值;若所述第一测试哈希值等于所述第一实际哈希值,则判定所述安卓设备的摄像功能正常。
在具体应用场景中,为了为部件进行测试,所述部件测试单元33,包括第二确定模块331和第二测试模块332。
所述第二确定模块331,可以用于在所述部件测试函数库中确定独立摄像头上下电测试函数、独立摄像头硬件接口测试函数、独立摄像头串口通信测试函数。
所述第二测试模块332,可以用于利用所述独立摄像头上下电测试函数对所述独立摄像头上下电功能进行测试,得到所述独立摄像头对应的独立摄像头上下电功能测试结果。
所述第二测试模块332,还可以用于利用所述独立摄像头硬件接口测试函数对所述独立摄像头硬件接口功能进行测试,得到所述独立摄像头对应的独立摄像头硬件接口功能测试结果。
所述第二测试模块332,还可以用于利用所述独立摄像头串口通信测试函数对所述独立摄像头串口通信功能进行测试,得到所述独立摄像头对应的独立摄像头串口通信功能测试结果。
在具体应用场景中,为了对独立摄像头上下电功能进行测试,所述第二测试模块332,具体可以用于建立程控继电器与所述独立摄像头之间的连接;响应于所述程控继电器对所述独立摄像头的供电信号,判断是否接收到所述独立摄像头上电成功的提示信息;若接收到所述上电成功的提示信息,则判定所述独立摄像头的上电功能正常;若未接收到所述上电成功的提示信息,则判定所述独立摄像头的上电功能异常;在接收到所述上电成功的提示信息后,响应于所述程控继电器对所述独立摄像头的断电信号,判断是否接收到所述独立摄像头下电成功的提示信息;若接收到所述下电成功的提示信息,则判定所述独立摄像头的下电功能正常;若未接收到所述下电成功的提示信息,则判定所述独立摄像头的下电功能异常。
在具体应用场景中,为了对独立摄像头的硬件接口功能进行测试,所述第二测试模块332,具体可以用于建立程控继电器与所述独立摄像头硬件接口的连接;响应于所述程控继电器对所述独立摄像头硬件接口的供电信号,向所述独立摄像头硬件接口中输入测试参数,并接收所述独立摄像头硬件接口输出的与所述测试参数相对应的测试返回值;确定所述测试参数对应的实际返回值;判断所述测试返回值是否与所述实际返回值相匹配;若所述测试返回值与所述实际返回值相匹配,则确定所述独立摄像头硬件接口功能正常;若所述测试返回值与所述实际返回值不相匹配,则确定所述独立摄像头硬件接口功能异常。
在具体应用场景中,为了对独立摄像头的串口通信功能进行测试,所述确定单元31,还可以用于确定与所述独立摄像头相对应的串口通信测试函数库。
所述部件测试单元33,还可以用于利用所述独立摄像头对应的串口通信测试函数库中的测试函数对所述独立摄像头串口通信功能进行测试,得到所述独立摄像头串口通信功能测试结果。
在具体应用场景中,为了独立摄像头的拍摄功能进行测试,所述部件测试单元33,还可以用于在所述通用测试函数库中获取摄像功能测试函数;利用所述摄像功能测试函数对所述独立摄像头的拍摄功能进行测试,得到所述独立摄像头对应的摄像头拍摄功能测试结果。
在具体应用场景中,为了利用摄像功能测试函数对独立摄像头的拍摄功能进行测试,所述部件测试单元33,具体还可以用于利用拍摄功能正常的摄像机对第二参照物进行拍照,得到所述第二参照物对应的第二实际图片;利用所述独立摄像头对所述第二参照物进行拍照,得到所述第二参照物对应的第二测试图片;计算所述第二实际图像对应的第二实际哈希值,以及所述第二测试图片对应的第二测试哈希值;判断所述第二测试哈希值是否等于所述第二实际哈希值;若所述第二测试哈希值等于所述第二实际哈希值,则判定所述独立摄像头的拍摄功能正常。
在具体应用场景中,为了记录安卓设备的测试信息,所述装置还包括启动单元36。
所述启动单元36,可以用于启动所述安卓设备对应的日志线程。
所述存储单元35,还可以用于在对所述安卓设备中的各种测试项目进行测试的过程中,调用所述安卓设备对应的日志线程来存储对所述安卓设备进行测试的测试信息。
在具体应用场景中,为了记录部件的测试信息,所述启动单元36,还可以用于启动所述部件对应的日志线程。
所述存储单元35,还可以用于在对所述部件中的各种测试项目进行测试的过程中,调用所述部件对应的日志线程来存储对所述部件进行测试的测试信息。
需要说明的是,本发明实施例提供的一种设备测试装置所涉及各功能模块的其他相应描述,可以参考图1所示方法的对应描述,在此不再赘述。
基于上述如图1所示方法,相应的,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:响应于待测试设备的测试信号,确定所述待测试设备所属的设备类型;若所述设备类型为安卓设备,则利用所述安卓设备对应的安卓测试函数库对所述安卓设备中的各种测试项目进行测试,得到所述安卓设备对应的测试结果;若所述待测试设备为部件,则利用所述部件对应的部件测试函数库对所述部件中的各种测试项目进行测试,得到所述部件对应的测试结果。
基于上述如图1所示方法和如图3所示装置的实施例,本发明实施例还提供了一种计算机设备的实体结构图,如图5所示,该计算机设备包括:处理器41、存储器42、及存储在存储器42上并可在处理器上运行的计算机程序,其中存储器42和处理器41均设置在总线43上所述处理器41执行所述程序时实现以下步骤:响应于待测试设备的测试信号,确定所述待测试设备所属的设备类型;若所述设备类型为安卓设备,则利用所述安卓设备对应的安卓测试函数库对所述安卓设备中的各种安卓测试项目进行测试,得到所述安卓设备对应的测试结果;若所述待测试设备为部件,则利用所述部件对应的部件测试函数库对所述部件中的各种部件测试项目进行测试,得到所述部件对应的测试结果。
根据本发明一个实施例提供了一种设备测试终端,所述设备测试终端部署有上述设备测试装置。
根据本发明一个实施例提供了一种设备测试系统,所述系统包括测试服务器和若干个采集终端,各所述采集终端分别与所述测试服务器连接;其中,所述测试服务器部署有上述设备测试装置;
所述采集终端,用于采集测试信号,并将所述测试信号发送至所述测试服务器。
通过本发明的技术方案,本发明通过响应于待测试设备的测试信号,确定所述待测试设备所属的设备类型;若所述设备类型为安卓设备,则利用所述安卓设备对应的安卓测试函数库对所述安卓设备中的各种安卓测试项目进行测试,得到所述安卓设备对应的测试结果;若所述待测试设备为部件,则利用所述部件对应的部件测试函数库对所述部件中的各种部件测试项目进行测试,得到所述部件对应的测试结果,由此通过构建安卓设备对应的安卓测试函数库,以及部件对应的部件测试函数库,该安卓测试函数库中涵盖了对各种安卓设备中的各种测试项目进行测试的测试函数,该部件测试函数库中涵盖了对各种部件中的各种测试项目进行测试的测试函数,若要对安卓设备进行测试时,直接调用安卓测试函数库中的测试函数对安卓设备进行测试,若要对部件进行测试,直接调用部件测试函数库中的测试函数对部件进行测试即可,避免工作人员预先编写测试代码所浪费的时间,从而本发明能够提高设备的测试效率,与此同时,也能够避免工作人员将测试代码编写错误的情况,从而本发明能够提高设备的测试准确度。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

Claims (10)

1.一种设备测试方法,其特征在于,包括:
响应于待测试设备的测试信号,确定所述待测试设备所属的设备类型;
若所述设备类型为安卓设备,则利用所述安卓设备对应的安卓测试函数库对所述安卓设备中的各种安卓测试项目进行测试,得到所述安卓设备对应的测试结果;
若所述待测试设备为部件,则利用所述部件对应的部件测试函数库对所述部件中的各种部件测试项目进行测试,得到所述部件对应的测试结果。
2.根据权利要求1所述的方法,其特征在于,所述安卓设备中的各种安卓测试项目包括:刷机测试、开关机测试和基本功能测试,所述利用所述安卓设备对应的安卓测试函数库对所述安卓设备中的各种安卓测试项目进行测试,得到所述安卓设备对应的测试结果,包括:
在所述安卓测试函数库中确定刷机测试函数、开关机测试函数和基本功能测试函数;
利用所述刷机测试函数对所述安卓设备的系统刷机功能进行测试,得到所述安卓设备对应的刷机测试结果;
利用所述开关机测试函数对所述安卓设备的开关机功能进行测试,得到所述安卓设备对应的开关机测试结果;
利用所述基本功能测试函数对所述安卓设备的各项基本功能进行测试,得到所述安卓设备对应的各项基本功能的测试结果。
3.根据权利要求2所述的方法,其特征在于,所述利用所述刷机测试函数对所述安卓设备的系统刷机功能进行测试,得到所述安卓设备对应的刷机测试结果,包括:
获取带有第一版本号的第一刷机固件和带有第二版本号的第二刷机固件;
判断所述第一版本号是否与所述安卓设备的刷机前版本号一致;
若所述第一版本号与所述刷机前版本号一致,则利用所述第二刷机固件对所述安卓设备进行刷机,得到第一刷机后的安卓设备;
确定所述第一刷机后的安卓设备对应的第一刷机后版本号,若所述第一刷机后版本号与所述第二版本号一致,则确定所述安卓设备的系统刷机功能正常;
若所述第一刷机后版本号与所述第二版本号不一致,则确定所述安卓设备的系统刷机功能异常。
4.根据权利要求2所述的方法,其特征在于,所述利用所述开关机测试函数对所述安卓设备的开关机功能进行测试,得到所述安卓设备对应的开关机测试结果,包括:
建立所述安卓设备与程控继电器之间的连接;
接收所述程控继电器对所述安卓设备进行供电的供电信号;
在接收到所述供电信号的预设时间后,判断是否接收到所述安卓设备的开机成功的提示信息;
若接收到所述开机成功的提示信息,则判定所述安卓设备的开机功能正常;
若未接收到所述开机成功的提示信息,则判定所述安卓设备的开机功能异常;
在接收到所述开机成功的提示信息后,响应于所述程控继电器对所述安卓设备的断电信号,判断是否接收到所述安卓设备的关机成功的提示信息;
若接收到所述关机成功的提示信息,则判定所述安卓设备的关机功能正常;
若未接收到所述关机成功的提示信息,则判定所述安卓设备的关机功能异常。
5.根据权利要求2所述的方法,其特征在于,所述各项基本功能包括:所述安卓设备中各个APP的启动功能,所述利用所述基本功能测试函数对所述安卓设备的各项基本功能进行测试,得到所述安卓设备对应的各项基本功能的测试结果,包括:
获取所述安卓设备上各个APP图标的中心点坐标;
响应于对所述中心点坐标的点击操作,记录所述点击操作对应的第一时间点;
在对所述中心点坐标的点击操作后,记录各个APP完全启动后对应的第二时间点;
将所述第二时间点与所述第一时间点相减,得到所述各个APP对应的启动时间;
判断各所述启动时间是否小于预设时间阈值;
若各所述启动时间小于预设时间阈值,则判定所述安卓设备中各个APP启动正常;
若各所述启动时间大于或等于预设时间阈值,则判定所述安卓设备中各个APP启动异常。
6.根据权利要求1所述的方法,其特征在于,所述部件为独立摄像头,所述各种部件测试项目包括:独立摄像头上下电功能测试、独立摄像头硬件接口功能测试、独立摄像头串口通信功能测试,所述利用所述部件对应的部件测试函数库对所述部件中的各种部件测试项目进行测试,得到所述部件对应的测试结果,包括:
在所述部件测试函数库中确定独立摄像头上下电测试函数、独立摄像头硬件接口测试函数、独立摄像头串口通信测试函数;
利用所述独立摄像头上下电测试函数对所述独立摄像头上下电功能进行测试,得到所述独立摄像头对应的独立摄像头上下电功能测试结果;
利用所述独立摄像头硬件接口测试函数对所述独立摄像头硬件接口功能进行测试,得到所述独立摄像头对应的独立摄像头硬件接口功能测试结果;
利用所述独立摄像头串口通信测试函数对所述独立摄像头串口通信功能进行测试,得到所述独立摄像头对应的独立摄像头串口通信功能测试结果。
7.根据权利要求6所述的方法,其特征在于,所述利用所述独立摄像头硬件接口测试函数对所述独立摄像头硬件接口功能进行测试,得到所述独立摄像头对应的独立摄像头硬件接口功能测试结果,包括:
建立程控继电器与所述独立摄像头硬件接口的连接;
响应于所述程控继电器对所述独立摄像头硬件接口的供电信号,向所述独立摄像头硬件接口中输入测试参数,并接收所述独立摄像头硬件接口输出的与所述测试参数相对应的测试返回值;
确定所述测试参数对应的实际返回值;
判断所述测试返回值是否与所述实际返回值相匹配;
若所述测试返回值与所述实际返回值相匹配,则确定所述独立摄像头硬件接口功能正常;
若所述测试返回值与所述实际返回值不相匹配,则确定所述独立摄像头硬件接口功能异常。
8.一种设备测试装置,其特征在于,包括:
确定单元,用于响应于待测试设备的测试信号,确定所述待测试设备所属的设备类型;
安卓测试单元,用于若所述设备类型为安卓设备,则利用所述安卓设备对应的安卓测试函数库对所述安卓设备中的各种安卓测试项目进行测试,得到所述安卓设备对应的测试结果;
部件测试单元,用于若所述待测试设备为部件,则利用所述部件对应的部件测试函数库对所述部件中的各种部件测试项目进行测试,得到所述部件对应的测试结果。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202310820462.7A 2023-07-05 2023-07-05 设备测试方法、装置、存储介质及计算机设备 Active CN116860630B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310820462.7A CN116860630B (zh) 2023-07-05 2023-07-05 设备测试方法、装置、存储介质及计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310820462.7A CN116860630B (zh) 2023-07-05 2023-07-05 设备测试方法、装置、存储介质及计算机设备

Publications (2)

Publication Number Publication Date
CN116860630A true CN116860630A (zh) 2023-10-10
CN116860630B CN116860630B (zh) 2024-09-20

Family

ID=88226245

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310820462.7A Active CN116860630B (zh) 2023-07-05 2023-07-05 设备测试方法、装置、存储介质及计算机设备

Country Status (1)

Country Link
CN (1) CN116860630B (zh)

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103514088A (zh) * 2012-06-19 2014-01-15 珠海世纪鼎利通信科技股份有限公司 一种终端应用软件的功能回归测试方法
CN110175114A (zh) * 2019-04-19 2019-08-27 深圳壹账通智能科技有限公司 测试终端、app与摄像头兼容性测试方法及存储介质
CN110430424A (zh) * 2019-07-03 2019-11-08 北京达佳互联信息技术有限公司 Fov的测试方法、装置、存储介质及电子设备
US20200103884A1 (en) * 2018-09-27 2020-04-02 Rockwell Automation Technologies, Inc. Automated industrial process testing via cross-domain object types
WO2020098548A1 (en) * 2018-11-16 2020-05-22 Changxin Memory Technologies, Inc. Test program generation method, device, memory medium and electronic equipment
WO2020233034A1 (zh) * 2019-05-21 2020-11-26 深圳壹账通智能科技有限公司 一种页面功能测试方法及相关装置
CN112181851A (zh) * 2020-10-27 2021-01-05 北京字跳网络技术有限公司 软件测试方法、设备及存储介质
CN113297084A (zh) * 2021-05-27 2021-08-24 上海移远通信技术股份有限公司 一种测试方法、系统、电子设备及存储介质
WO2021196674A1 (zh) * 2020-03-30 2021-10-07 平安科技(深圳)有限公司 系统代码的测试方法、装置、计算机设备和存储介质
CN113515460A (zh) * 2021-07-30 2021-10-19 深圳康佳电子科技有限公司 一种功能测试方法、装置、终端设备及存储介质
CN114064510A (zh) * 2021-11-30 2022-02-18 中国建设银行股份有限公司 功能测试方法、装置、电子设备和存储介质
CN114153719A (zh) * 2021-10-27 2022-03-08 深圳市鑫信腾科技股份有限公司 测试方法及相关设备
CN114218072A (zh) * 2021-11-23 2022-03-22 成都鲁易科技有限公司 测试脚本生成方法、装置、存储介质及计算机设备
CN114416451A (zh) * 2022-01-19 2022-04-29 曙光信息产业股份有限公司 服务器测试方法、装置、计算机设备和存储介质
CN115563007A (zh) * 2022-10-27 2023-01-03 中国星网网络应用有限公司 一种无线通信终端测试方法、装置及电子设备
CN115655666A (zh) * 2022-10-25 2023-01-31 深圳市点亮视界科技有限公司 一种基于摄像头的级联式显示模组检测装置及方法
CN115904841A (zh) * 2022-11-23 2023-04-04 浪潮金融信息技术有限公司 一种自助终端的远程测试方法、系统、设备及介质

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103514088A (zh) * 2012-06-19 2014-01-15 珠海世纪鼎利通信科技股份有限公司 一种终端应用软件的功能回归测试方法
US20200103884A1 (en) * 2018-09-27 2020-04-02 Rockwell Automation Technologies, Inc. Automated industrial process testing via cross-domain object types
WO2020098548A1 (en) * 2018-11-16 2020-05-22 Changxin Memory Technologies, Inc. Test program generation method, device, memory medium and electronic equipment
CN110175114A (zh) * 2019-04-19 2019-08-27 深圳壹账通智能科技有限公司 测试终端、app与摄像头兼容性测试方法及存储介质
WO2020233034A1 (zh) * 2019-05-21 2020-11-26 深圳壹账通智能科技有限公司 一种页面功能测试方法及相关装置
CN110430424A (zh) * 2019-07-03 2019-11-08 北京达佳互联信息技术有限公司 Fov的测试方法、装置、存储介质及电子设备
WO2021196674A1 (zh) * 2020-03-30 2021-10-07 平安科技(深圳)有限公司 系统代码的测试方法、装置、计算机设备和存储介质
CN112181851A (zh) * 2020-10-27 2021-01-05 北京字跳网络技术有限公司 软件测试方法、设备及存储介质
CN113297084A (zh) * 2021-05-27 2021-08-24 上海移远通信技术股份有限公司 一种测试方法、系统、电子设备及存储介质
CN113515460A (zh) * 2021-07-30 2021-10-19 深圳康佳电子科技有限公司 一种功能测试方法、装置、终端设备及存储介质
CN114153719A (zh) * 2021-10-27 2022-03-08 深圳市鑫信腾科技股份有限公司 测试方法及相关设备
CN114218072A (zh) * 2021-11-23 2022-03-22 成都鲁易科技有限公司 测试脚本生成方法、装置、存储介质及计算机设备
CN114064510A (zh) * 2021-11-30 2022-02-18 中国建设银行股份有限公司 功能测试方法、装置、电子设备和存储介质
CN114416451A (zh) * 2022-01-19 2022-04-29 曙光信息产业股份有限公司 服务器测试方法、装置、计算机设备和存储介质
CN115655666A (zh) * 2022-10-25 2023-01-31 深圳市点亮视界科技有限公司 一种基于摄像头的级联式显示模组检测装置及方法
CN115563007A (zh) * 2022-10-27 2023-01-03 中国星网网络应用有限公司 一种无线通信终端测试方法、装置及电子设备
CN115904841A (zh) * 2022-11-23 2023-04-04 浪潮金融信息技术有限公司 一种自助终端的远程测试方法、系统、设备及介质

Also Published As

Publication number Publication date
CN116860630B (zh) 2024-09-20

Similar Documents

Publication Publication Date Title
CN111045901B (zh) 容器的监控方法、装置、存储介质和电子设备
CN109885480B (zh) 一种基于调试桥的自动化界面兼容性测试方法及装置
CN104063305A (zh) 智能终端软件的压力测试方法、装置和系统
CN103634592A (zh) 智能电视自动化测试方法及系统
CN111817921B (zh) 移动测试设备、测试方法、装置、系统及组网方法
CN109766275B (zh) 移动应用的自动化测试方法、系统、存储介质以及设备
CN110837474A (zh) 一种脚本录制方法、装置、终端及存储介质
CN113076257B (zh) 测试脚本录制方法、装置、介质及计算机设备
CN112333057A (zh) 智能家居设备配网测试方法及装置、执行机、存储介质
CN105260082A (zh) 一种测试数据展示方法及开发终端
KR20080052341A (ko) 내장형 시스템 소프트웨어 자동 테스트 시스템 및 방법과테스트 시나리오 작성 방법
CN112783756A (zh) 一种自动测试方法、终端、系统及存储介质
CN111159047A (zh) 具有可视化界面的Android设备辅助调试装置及其操作方法
CN113077834A (zh) 存储设备测试方法、装置、电视机以及存储介质
CN115827111A (zh) 服务器启动项的调整方法和装置、存储介质及电子装置
CN111212227A (zh) 摄像头录像分辨率的配置方法、装置、设备和存储介质
CN104914764B (zh) 远程实验系统
CN113849356A (zh) 一种设备测试方法、装置、电子设备和存储介质
CN116860630B (zh) 设备测试方法、装置、存储介质及计算机设备
CN111128139B (zh) 无侵入式语音测试方法及装置
CN112199270B (zh) 一种程序测试方法、装置、设备及介质
CN114138312A (zh) 升级测试方法、装置、电子设备及计算机可读存储介质
CN114637669A (zh) 设备管理方法、装置、设备及存储介质
CN111221723B (zh) 测试记录生成方法、装置、存储介质及电子设备
CN113391931A (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