本发明涉及自动化测试技术领域,尤其涉及一种智能终端的测试方法及测试系统。
背景技术:
智能终端已经渗透到人们生活的方方面面,以ai音箱为例,其具有人工智能和互联网属性的特点为人们的日程生活增添了浓厚的色彩。
现有技术中的ai音箱基于andriod系统,在出厂前,为了保证其稳定性、可靠性和完整性,需要对其含有的麦克风、喇叭、wifi等模块进行测试。
目前,采用andriod系统的ai音箱常用的测试方法包括以下几种:
一、pcba测试阶段,在测试板上烧录一个基于linux系统的pcba测试系统,让pcba测试程序运行在linux系统上,缩减pcba测试程序及其关联服务的启动时间,提高测试效率;整机测试阶段,通过重新烧录固件,将其切换为ai音箱系统(android系统)进行测试。这种方式在pcba测试与整机测试使用不同的系统固件时,需要进行系统固件的切换,使工厂测试的时间长、生产效率低。
二、直接在android系统上进行pcba测试,此方法不仅android系统启动时间长,而且在特殊的外部触发后android应用程序由正常模式退出并进入工厂模式需要一定的时间,导致工厂测试的时间长、生产效率低。
三、不进行pcba测试,直接进行整机测试,这种方式一旦出现pcba问题导致的返修,则会更加降低生成效率。
技术实现要素:
本发明的目的是提供一种智能终端的测试方法及测试系统,以解决现有技术中的问题,提高生产效率。
一种智能终端的测试方法,其特征在于,包括:
启动带有安卓系统的智能终端,所述智能终端中预先烧录有测试程序,所述测试程序包括pcba测试程序及整机测试程序;
利用init进程调用pcba测试程序在linux系统中运行,对智能终端的pcba进行测试,在pcba测试完成后向上位机上报pcba测试结果;
利用init进程启动智能终端的安卓系统,调用所述整机测试程序对所述智能终端的应用程序进行整机测试,在整机测试完成后向上位机上报整机测试结果。
优选地,还包括:init进程根据检测设定的触发条件是否触发,选择调用pcba测试程序或启动智能终端的安卓系统;
如果是,则利用init进程调用pcba测试程序在linux系统中运行,对智能终端的pcba进行测试,在pcba测试完成后向上位机上报pcba测试结果;
如果否,则利用init进程启动智能终端的安卓系统,调用所述整机测试程序对所述智能终端的应用程序进行整机测试,在整机测试完成后向上位机上报整机测试结果。
优选地,检测设定的触发条件被触发时,所述方法还包括:
启动pcba上硬件的服务程序;
利用init进程调用pcba测试程序在linux系统中运行,对智能终端的pcba进行测试,在pcba测试完成后向上位机上报pcba测试结果。
优选地,所述pcba测试程序包括内存测试程序、wifi测试程序、蓝牙测试程序和硬盘存储测试程序。
优选地,在pcba测试完成后向上位机上报pcba测试结果之后,所述方法还包括:
形成触发文件,所述触发文件用于作为进入整机测试程序的触发条件。
优选地,在进入安卓系统后,所述方法还包括:
启动智能终端服务程序;
在所述智能终端服务程序的设定路径下,检测是否存在所述触发文件;
如果是,则退出所述智能终端服务程序,调用所述整机测试程序对所述智能终端的应用程序进行整机测试,在整机测试完成后向上位机上报整机测试结果;
如果否,则继续运行所述智能终端服务程序。
优选地,在进入安卓系统后,所述方法还包括:
启动智能终端服务程序;
检测是否触发设定的组合键;
如果是,则退出所述智能终端服务程序,调用所述整机测试程序对所述智能终端的应用程序进行整机测试,在整机测试完成后向上位机上报整机测试结果;
如果否,则继续运行所述智能终端服务程序。
优选地,所述整机测试程序用于测试:智能终端安装的app程序以及硬件的服务程序。
本发明还提供了一种智能终端的测试系统,其中,包括init单元、pcba测试单元和整机测试单元;
所述init单元用于在安卓系统环境下,根据需求调用所述pcba测试单元以及智能终端的安卓系统;
所述pcba测试单元,用于使pcba测试程序在linux系统中运行,对智能终端的pcba进行测试,在pcba测试完成后向上位机上报pcba测试结果;
所述整机测试单元,用于运行整机测试程序对所述智能终端的应用程序进行整机测试,在整机测试完成后向上位机上报整机测试结果。
优选地,所述init单元,还用于根据检测设定的触发条件是否触发调用pcba测试单元或整机测试单元。
本发明提供的智能终端的测试方法及测试系统,利用init进程调用pcba测试程序在linux系统中运行,对智能终端的pcba进行测试,在pcba测试完成后向上位机上报pcba测试结果;利用init进程启动智能终端的安卓系统,调用所述整机测试程序对所述智能终端的应用程序进行整机测试,在整机测试完成后向上位机上报整机测试结果。与现有技术相比,无需切换系统即可完成快速的pcba测试以及整机测试,提高了产品的出厂效率。
附图说明
图1为本发明第一种实施例提供的智能终端的测试方法的流程图;
图2为本发明第二种实施例提供的智能终端的测试方法的流程图;
图3为本发明第三种实施例提供的智能终端的测试方法的流程图;
图4为本发明第四种实施例提供的智能终端的测试方法的流程图;
图5为本发明第五种实施例提供的智能终端的测试方法的流程图;
图6为本发明第六种实施例提供的智能终端的测试方法的流程图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
图1为本发明第一种实施例提供的智能终端的测试方法的流程图,如图1所示,本发明实施例提供了一种智能终端的测试方法,该智能终端可以是ai音箱,也可以是其他ai设备。
该方法包括:
s101,启动带有安卓系统的智能终端。
s102,利用init进程调用pcba测试程序在linux系统中运行,对智能终端的pcba进行测试,在pcba测试完成后向上位机上报pcba测试结果。
当linux内核启动之后,运行的第一个进程是初始化(init)进程,初始化(init)进程是一个由内核启动的用户级进程,其他的进程均由其启动。
优选地,所述pcba测试程序包括内存(ddr)测试程序、wifi测试程序、蓝牙测试程序和硬盘存储(emmc)测试程序。本实施例中,pcba测试程序启动四个线程,每个线程中分配了不同的测试项,由此可以利用四核cpu及linux开机速度快的特性来缩短测试时间。
s103,利用init进程启动智能终端的安卓系统,调用所述整机测试程序对所述智能终端的应用程序进行整机测试,在整机测试完成后向上位机上报整机测试结果。
优选地,该整机测试程序用于测试:智能终端安装的app程序以及硬件的服务程序,包括pcba所测试的模块测试程序、灯带测试程序、触摸圆环测试程序和唤醒测试程序等。
整机测试程序首先自检pcba测试时的各个模块,然后测试组装后新增的灯带、触摸圆环、带外观结构下的音效和语音唤醒等功能,然后通过wifi传输于上位机进行保存和分析,最后通过声音和灯带提示整机测试完毕。
本发明实施例提供的智能终端的测试方法,实现了一次系统烧录即可完成pcba测试和整机测试的目标,解决了通过人工方式更换不同系统引起的生产效率问题,以及解决了通过安卓系统应用层完成工厂测试引起的生产效率问题。
图2为本发明第二种实施例提供的智能终端的测试方法的流程图,如图2所示,本发明实施例提供了一种智能终端的测试方法,该方法包括:
s201,启动带有安卓系统的智能终端。
s202,init进程根据检测设定的触发条件是否触发,选择调用pcba测试程序或启动智能终端的安卓系统,如果是,则进入s203;如果否,则进入s204。
具体而言,init进程能够根据开机时不同的触发条件,调用不同的程序或启动不同的系统及服务。在本实施例中,在init进程启动时可以检测特定gpio引脚(测试引脚)的电平状态作为触发条件。当该测试引脚的电平状态为低电平时,则进入s203;当该测试引脚的电平状态为高电平时,则进入s204。
该测试引脚在pcb板上表现为一个圆形触点。进行pcba测试时,在init进程启动之前,通过探针接触圆形触点并将其电平拉低。整机测试时,由于外壳及结构的保护,可防止被外部误触且刚好下拉至低电平导致的启动pcba测试。
本领域技术人员可以理解的是,触发条件不仅限于上述的电平触发,还可以是按钮触发等其他形式。
s203,利用init进程调用pcba测试程序在linux系统中运行,对智能终端的pcba进行测试,在pcba测试完成后向上位机上报pcba测试结果。
s204,利用init进程启动智能终端的安卓系统,调用所述整机测试程序对所述智能终端的应用程序进行整机测试,在整机测试完成后向上位机上报整机测试结果。
图3为本发明第三种实施例提供的智能终端的测试方法的流程图,如图3所示,本发明实施例提供了一种智能终端的测试方法,该方法包括:
s301,启动带有安卓系统的智能终端。
s302,init进程根据检测设定的触发条件是否触发,选择调用pcba测试程序或启动智能终端的安卓系统,如果是,则进入s303;如果否,则进入s305。
s303,启动pcba上硬件的服务程序。该服务程序可以包括wifi服务程序、蓝牙服务程序等。
s304,利用init进程调用pcba测试程序在linux系统中运行,对智能终端的pcba进行测试,在pcba测试完成后向上位机上报pcba测试结果。
s305,利用init进程启动智能终端的安卓系统,调用所述整机测试程序对所述智能终端的应用程序进行整机测试,在整机测试完成后向上位机上报整机测试结果。
图4为本发明第四种实施例提供的智能终端的测试方法的流程图,如图4所示,本发明实施例提供了一种智能终端的测试方法,该方法包括:
s401,启动带有安卓系统的智能终端。
s402,利用init进程调用pcba测试程序在linux系统中运行,对智能终端的pcba进行测试,在pcba测试完成后向上位机上报pcba测试结果。
s403,形成触发文件,所述触发文件用于作为进入整机测试程序的触发条件。该触发文件可以是空文件,也可以是其他形式的文件。可以利用该空文件作为下文中进入整机测试程序的触发条件。
s404,利用init进程启动智能终端的安卓系统,调用所述整机测试程序对所述智能终端的应用程序进行整机测试,在整机测试完成后向上位机上报整机测试结果。
图5为本发明第五种实施例提供的智能终端的测试方法的流程图,如图5所示,本发明实施例提供了一种智能终端的测试方法,该方法包括:
s501,启动带有安卓系统的智能终端。
s502,利用init进程调用pcba测试程序在linux系统中运行,对智能终端的pcba进行测试,在pcba测试完成后向上位机上报pcba测试结果。
s503,形成触发文件;所述触发文件用于作为进入整机测试程序的触发条件。该触发文件可以是空文件,也可以是其他形式的文件。可以利用该空文件作为下文中进入整机测试程序的触发条件。
s504,利用init进程启动智能终端的安卓系统。
s505,启动智能终端服务程序。
s506,在所述智能终端服务程序的设定路径下,检测是否存在所述触发文件;如果是,则进入s507;如果否,则进入s508。
s507,退出所述智能终端服务程序,调用所述整机测试程序对所述智能终端的应用程序进行整机测试,在整机测试完成后向上位机上报整机测试结果。
s508,继续运行所述智能终端服务程序。
优选地,在s507之后,还包括:
s509,删除所述触发文件。
图6为本发明第六种实施例提供的智能终端的测试方法的流程图,如图6所示,本发明实施例提供了一种智能终端的测试方法,该方法包括:
s601,启动带有安卓系统的智能终端。
s602,利用init进程调用pcba测试程序在linux系统中运行,对智能终端的pcba进行测试,在pcba测试完成后向上位机上报pcba测试结果。
s603,利用init进程启动智能终端的安卓系统。
s604,启动智能终端服务程序。
s605,检测是否触发设定的组合键;如果是,则进入s606;如果否,则进入s607。
s606,退出所述智能终端服务程序,调用所述整机测试程序对所述智能终端的应用程序进行整机测试,在整机测试完成后向上位机上报整机测试结果。
s607,继续运行所述智能终端服务程序。
本发明实施例还提供了一种智能终端的测试系统,其中,包括init单元、pcba测试单元和整机测试单元。其中,所述init单元用于在安卓系统环境下,根据需求调用所述pcba测试单元以及智能终端的安卓系统;所述pcba测试单元,用于使pcba测试程序在linux系统中运行,对智能终端的pcba进行测试,在pcba测试完成后向上位机上报pcba测试结果;所述整机测试单元,用于运行整机测试程序对所述智能终端的应用程序进行整机测试,在整机测试完成后向上位机上报整机测试结果。
优选地,所述init单元,还用于根据检测设定的触发条件是否触发调用pcba测试单元或整机测试单元。
本发明实施例提供的智能终端的测试系统,实现了一次系统烧录即可完成pcba测试和整机测试的目标,解决了通过人工方式更换不同系统引起的生产效率问题,以及解决了通过安卓系统应用层完成工厂测试引起的生产效率问题。
以上依据图式所示的实施例详细说明了本发明的构造、特征及作用效果,以上所述仅为本发明的较佳实施例,但本发明不以图面所示限定实施范围,凡是依照本发明的构想所作的改变,或修改为等同变化的等效实施例,仍未超出说明书与图示所涵盖的精神时,均应在本发明的保护范围内。