本发明涉及自动化测试领域,尤其涉及一种终端设备的自动化测试方法和系统。
背景技术
在硬件测试中,冲突测试主要利用综测仪,在指定的带宽和信道下,通过控制发射功率来获取手机接收数据时的丢包率,以不断探底的方式来验证手机的天线性能。但是,现有的综测仪所安装的软件只能控制综测仪本身,而无法对手机的状态进行控制,故而,在实际测试过程中,仍然需要测试人员手动地进行诸如切换手机场景,开关飞行模式等手机操作,无法实现全自动的无人值守的自动化测试。
技术实现要素:
本发明要解决的技术问题是为了克服现有技术中综测仪无法实现全自动的冲突测试的缺陷,提供一种终端设备的自动化测试方法和系统。
本发明是通过下述技术方案来解决上述技术问题:
一种终端设备的自动化测试方法,其特点在于,所述自动化测试方法包括:
创建至少一测试脚本,所述测试脚本包括测试场景和测试参数;
读取所述测试脚本;
利用综测仪根据所述测试脚本对所述终端设备进行测试;
所述利用综测仪根据所述测试脚本对所述终端设备进行测试的步骤包括:
根据所述测试脚本中的测试参数设置综测仪;
根据所述测试脚本中的测试场景设置所述终端设备;
连接所述综测仪和所述终端设备;
通过所述综测仪对所述终端设备进行测试。
可选地,在创建的测试脚本的数量超过一个时,在所述利用综测仪根据所述测试脚本对所述终端设备进行测试的步骤之后,所述自动化测试方法还包括:
判断所述至少一测试脚本是否均已被读取;
若否,则读取一个未曾被读取的测试脚本,并继续执行所述综测仪根据所述测试脚本对所述终端设备进行测试的步骤。
可选地,所述根据所述测试脚本中的测试场景设置所述终端设备的步骤包括:
根据所述测试脚本中的测试场景调取与所述测试场景相应的测试场景脚本,所述测试场景脚本用于将所述终端设备的场景设置为所述测试场景;
在所述终端设备上执行所述测试场景脚本。
可选地,在所述连接所述综测仪和所述终端设备的步骤之后,所述利用综测仪根据所述测试脚本对所述终端设备进行测试的步骤还包括:
检测所述综测仪和所述终端设备是否连接成功;
若是,则继续执行所述通过所述综测仪对所述终端设备进行测试的步骤;
若否,则设置所述终端设备重新检查网络连接;
判断执行所述设置所述终端设备重新检查网络连接的步骤的次数是否小于预设阈值;
若是,则继续执行所述检测所述综测仪和所述终端设备是否连接成功的步骤;
若否,则记录所述综测仪和所述终端设备连接不成功。
可选地,所述通过所述综测仪对所述终端设备进行测试的步骤包括:
通过所述综测仪测试在确保丢包率不高于预设最大丢包率的情况下所述终端设备可接收的最低发射功率。
一种终端设备的自动化测试系统,其特点在于,所述自动化测试系统包括:
创建模块,用于创建至少一测试脚本,所述测试脚本包括测试场景和测试参数;
读取模块,用于读取所述测试脚本;
测试模块,用于利用综测仪根据所述测试脚本对所述终端设备进行测试;
所述测试模块包括:
第一设置单元,用于根据所述测试脚本中的测试参数设置综测仪;
第二设置单元,用于根据所述测试脚本中的测试场景设置所述终端设备;
连接单元,用于连接所述综测仪和所述终端设备;
测试单元,用于通过所述综测仪对所述终端设备进行测试。
可选地,在所述创建模块创建的测试脚本的数量超过一个时,所述自动化测试系统还包括:
判断模块,用于判断所述至少一测试脚本是否均已被读取;
若否,则调用所述读取模块读取一个未曾被读取的测试脚本,并继续调用所述测试模块。
可选地,所述第二设置单元具体用于根据所述测试脚本中的测试场景调取与所述测试场景相应的测试场景脚本,所述测试场景脚本用于将所述终端设备的场景设置为所述测试场景;
所述第二设置单元具体还用于在所述终端设备上执行所述测试场景脚本。
可选地,所述测试模块还包括:检测单元、第三设置单元、判断单元、记录单元,其中:
所述检测单元用于检测所述综测仪和所述终端设备是否连接成功;
若是,则继续调用所述测试单元;
若否,则调用所述第三设置单元,所述第三设置单元用于设置所述终端设备重新检查网络连接;
所述判断单元用于判断调用所述第三设置单元的次数是否小于预设阈值;
若是,则继续调用所述检测单元;
若否,则调用所述记录单元,所述记录单元用于记录所述综测仪和所述终端设备连接不成功。
可选地,所述测试单元具体用于,通过所述综测仪测试在确保丢包率不高于预设最大丢包率的情况下所述终端设备可接收的最低发射功率。
本发明的积极进步效果在于:本发明中所创建的测试脚本,不仅包括带宽、信道等测试参数,还包括终端设备的测试场景,从而,该测试脚本的执行,既能够设置综测仪的测试参数,又能够设置待测终端设备的测试场景,进而可以利用综测仪对终端设备进行测试,无需测试人员手动切换设置终端设备的测试场景,能够基于综测仪实现对终端设备的自动化测试。
附图说明
图1为根据本发明实施例1的终端设备的自动化测试方法的流程图。
图2为根据本发明实施例2的终端设备的自动化测试方法中步骤3的流程图。
图3为根据本发明实施例2的终端设备的自动化测试方法中步骤32的流程图。
图4为根据本发明实施例3的终端设备的自动化测试方法中步骤34的部分流程图。
图5为根据本发明实施例5的终端设备的自动化测试系统的模块示意图。
图6为根据本发明实施例6的终端设备的自动化测试系统中测试模块的模块示意图。
图7为根据本发明实施例7的终端设备的自动化测试系统中测试单元的模块示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
本实施例提供一种终端设备的自动化测试方法,图1示出了本实施例的流程图。参照图1,本实施例的自动化测试方法包括:
步骤1、创建至少一测试脚本;
在该步骤中,测试脚本包括测试场景和测试参数,测试参数可以包括但不限于带宽、信道。
步骤2、读取测试脚本;
步骤3、利用综测仪根据测试脚本对终端设备进行测试;
具体地,在本实施例中,步骤3具体包括:
步骤31、根据测试脚本中的测试参数设置综测仪;
步骤32、根据测试脚本中的测试场景设置终端设备;
步骤33、连接综测仪和终端设备;
步骤34、通过综测仪对终端设备进行测试。
在步骤1中创建的测试脚本的数量超过一个时,在步骤3之后,本实施例的自动化测试方法还包括:
步骤4、判断至少一测试脚本是否均已被读取;
若判断为是,则所有测试脚本均被读取;
若判断为否,则返回继续执行步骤2,读取一个未曾被读取的测试脚本,并继续执行步骤3,如此,以自动完成对所有测试脚本的测试。
进一步地,在本实施例中,可以断开终端设备与其他设备的有线连接(诸如,经由usb(universalserialbus,通用串行总线)的连接),以停止终端设备与自动化测试无关的通讯和电量传输,以提高测试的准确性。
较之仅具有测试参数的测试脚本,本实施例重新定义了测试脚本,使之在包括测试脚本之外,还具有测试场景,从而,该测试脚本的执行,既能够设置综测仪的测试参数,又能够设置待测终端设备的测试场景,进而可以利用综测仪对终端设备进行测试,无需测试人员手动切换设置终端设备的测试场景,能够基于综测仪实现对终端设备的自动化测试。
实施例2
本实施例提供的终端设备的自动化测试方法,是对实施例1的进一步改进,图2示出了本实施例的步骤3的流程图。参照图2,本实施例较之实施例1的改进在于,本实施例的自动化测试方法中步骤3在步骤33之后还包括:
步骤35、检测综测仪和终端设备是否连接成功;
若是,则转至步骤34;
若否,则转至步骤36;
步骤36、设置终端设备重新检查网络连接;
在该步骤中,可以通过adb(androiddebugbridge,安卓调试桥)指令以及测试脚本控制终端设备在飞行模式和测试场景中进行切换,以促使终端设备重新检查网络连接。
步骤37、判断执行上一步骤的次数是否小于预设阈值;
若是,则转至步骤35;
若否,则转至步骤38;
在该步骤中,也即判断执行步骤36的次数是否小于预设阈值,其中,阈值可以根据具体应用自定义设置。
步骤38、记录综测仪和终端设备连接不成功。
在该步骤中,综测仪和终端设备多次连接不成功,属于异常情形,可以转至预设的异常处理机制进行处理。
此外,参见图3,在本实施例中步骤32具体可以包括:
步骤321、根据测试脚本中的测试场景调取与测试场景相应的测试场景脚本;
在该步骤中,测试场景脚本用于将终端设备的场景设置为测试场景。
步骤322、在终端设备上执行测试场景脚本。
本实施例在实施例1的基础上,进一步检测综测仪和终端设备的连接情况,并对连接不成功的终端设备进行重新设置,以促使综测仪和终端设备连接成功,从而进一步促进测试的自动化,提高自动化测试的效率。
实施例3
本实施例提供的终端设备的自动化测试方法,是对实施例1的进一步改进,具体地,在本实施例中,步骤34具体包括:通过综测仪测试在确保丢包率不高于预设最大丢包率的情况下终端设备可接收的最低发射功率。
在本实施例中,测试参数包括初始发射功率,参照图4,步骤34具体可以利用以下步骤通过综测仪测试在确保丢包率不高于预设最大丢包率的情况下终端设备可接收的最低发射功率:
步骤341、综测仪根据测试发射功率向终端设备发送测试数据包;
在该步骤中,测试发射功率的初始值为初始发射功率;
步骤342、检测被发送的测试数据包的丢包率;
步骤343、判断检测到的丢包率是否不高于预设最大丢包率;
若是,则转至步骤344;
若否,则转至步骤345;
步骤344、减小测试发射功率,并继续执行步骤341、342、343,直至步骤343判断为否时,转至步骤346;
步骤345、增大测试发射功率,并继续执行步骤341、342、343,直至步骤343判断为是时,转至步骤347;
步骤346、令最低发射功率为上一测试发射功率;
步骤347、令最低发射功率为测试发射功率。
在本实施例步骤344和345中,可以但不限于以等间隔的方式减小或者增大发射功率。
本实施例在实施例1的基础上,提供了一种在确保丢包率的情况下测试终端设备可接收的最低发射功率的实现方式,从而进一步促进测试的自动化,提高自动化测试的效率。
实施例4
本实施例提供的终端设备的自动化测试方法,是对实施例3的进一步改进。
在执行步骤344之后,步骤343判断为否时,本实施例中步骤34还包括:增大测试发射功率,并继续执行步骤341、342、343,直至步骤343判断为是时,令最低发射功率为测试发射功率。
应当理解,在此情况下,增大测试功率的步长可以小于减小测试功率的步长。
在执行步骤345之后,步骤343判断为是时,本实施例中步骤34还包括:减小测试发射功率,并继续执行步骤341、342、343,直至步骤343判断为否时,令最低发射功率为上一测试发射功率。
应当理解,在此情况下,减小测试功率的步长可以小于增大测试功率的步长。
应当理解,在本实施例中,可以但不限于以等间隔的方式减小或者增大发射功率。
本实施例在实施例3的基础上,以结合粗调和微调的方式,提供了一种更加精确地,在确保丢包率的情况下,测试终端设备可接收的最低发射功率的实现方式,从而进一步促进测试的自动化,提高自动化测试的效率。
实施例5
本实施例提供一种终端设备的自动化测试系统,图5示出了本实施例的模块示意图。参照图5,本实施例的自动化测试系统包括:
创建模块5,用于创建至少一测试脚本,所述测试脚本包括测试场景和测试参数,测试参数可以包括但不限于带宽、信道。
读取模块6,用于读取所述测试脚本。
测试模块7,用于利用综测仪根据所述测试脚本对所述终端设备进行测试。具体地,测试模块7包括:
第一设置单元71,用于根据所述测试脚本中的测试参数设置综测仪。
第二设置单元72,用于根据所述测试脚本中的测试场景设置所述终端设备。
连接单元73,用于连接所述综测仪和所述终端设备。
测试单元74,用于通过所述综测仪对所述终端设备进行测试。
在所述创建模块5创建的测试脚本的数量超过一个时,本实施例的自动化测试系统还包括:
判断模块8,用于判断所述至少一测试脚本是否均已被读取;
若是,则所有测试脚本均已被读取;若否,则调用所述读取模块6读取一个未曾被读取的测试脚本,并继续调用所述测试模块7,如此,以自动完成对所有测试脚本的测试。
进一步地,在本实施例中,可以断开终端设备与其他设备的有线连接(诸如通过usb),以停止终端设备与自动化测试无关的通讯和电量传输,以提高测试的准确性。
较之仅具有测试参数的测试脚本,本实施例重新定义了测试脚本,使之在包括测试脚本之外,还具有测试场景,从而,该测试脚本的执行,既能够设置综测仪的测试参数,又能够设置待测终端设备的测试场景,进而可以利用综测仪对终端设备进行测试,无需测试人员手动切换设置终端设备的测试场景,能够基于综测仪实现对终端设备的自动化测试。
实施例6
本实施例提供的终端设备的自动化测试系统,是对实施例5的进一步改进,图6示出了本实施例中测试模块的模块示意图。参照图6,本实施例较之实施例5的改进在于,本实施例的自动化测试系统中,测试模块7还包括:检测单元75、第三设置单元76、判断单元77、记录单元78,其中:
检测单元75用于检测所述综测仪和所述终端设备是否连接成功;若是,则继续调用所述测试单元74;若否,则调用所述第三设置单元76。
所述第三设置单元76用于设置所述终端设备重新检查网络连接,具体地,可以通过adb指令以及测试脚本控制终端设备在飞行模式和测试场景中进行切换,以促使终端设备重新检查网络连接。
所述判断单元77用于判断调用所述第三设置单元76的次数是否小于预设阈值;若是,则继续调用所述检测单元75;若否,则调用所述记录单元78。其中,阈值可以根据具体应用自定义设置。
所述记录单元78用于记录所述综测仪和所述终端设备连接不成功。其中,综测仪和终端设备多次连接不成功,属于异常情形,可以转至预设的异常处理机制进行处理。
此外,在本实施例中,第二设置单元72具体用于根据所述测试脚本中的测试场景调取与所述测试场景相应的测试场景脚本,其中,所述测试场景脚本用于将所述终端设备的场景设置为所述测试场景。所述第二设置单元72还用于在所述终端设备上执行所述测试场景脚本。
本实施例在实施例5的基础上,进一步检测综测仪和终端设备的连接情况,并对连接不成功的终端设备进行重新设置,以促使综测仪和终端设备连接成功,从而进一步促进测试的自动化,提高自动化测试的效率。
实施例7
本实施例提供的终端设备的自动化测试系统,是对实施例5的进一步改进,具体地,在本实施例中,测试单元74具体用于,通过所述综测仪测试在确保丢包率不高于预设最大丢包率的情况下所述终端设备可接收的最低发射功率。
在本实施例中,测试参数包括初始发射功率,参照图7,测试单元74具体包括发送子单元741、检测子单元742、判断子单元743、调整子单元744、发射功率确定子单元745。其中:
发送子单元741,用于综测仪根据测试发射功率向终端设备发送测试数据包,其中,测试发射功率的初始值为初始发射功率。
检测子单元742,用于检测被发送的测试数据包的丢包率。
判断子单元743,用于判断检测到的丢包率是否不高于预设最大丢包率;
若是,则调用调整子单元744以减小测试发射功率,并继续调用发送子单元741、检测子单元742、判断子单元743,直至判断子单元743判断为否时,调用发射功率确定子单元745以用于令最低发射功率为上一测试发射功率;
若否,则调用调整子单元744以增大测试发射功率,并继续调用发送子单元741、检测子单元742、判断子单元743,直至判断子单元743判断为是时,调用发射功率确定子单元745以用于令最低发射功率为测试发射功率。
在本实施例中,调用调整子单元744可以但不限于以等间隔的方式减小或者增大发射功率。
本实施例在实施例5的基础上,提供了一种在确保丢包率的情况下测试终端设备可接收的最低发射功率的实现方式,从而进一步促进测试的自动化,提高自动化测试的效率。
实施例8
本实施例提供的终端设备的自动化测试系统,是对实施例7的进一步改进。
在调用调整子单元744以减小测试发射功率之后,判断子单元743判断为否时,本实施例中,继续调用调整子单元744以增大测试发射功率,并继续调用发送子单元741、检测子单元742、判断子单元743,直至判断子单元743判断为是时,调用发射功率确定子单元745以用于令最低发射功率为测试发射功率。
应当理解,在此情况下,调整子单元744增大测试功率的步长可以小于减小测试功率的步长。
在调用调整子单元744以增大测试发射功率之后,判断子单元743判断为是时,本实施例中,继续调用调整子单元744以减小测试发射功率,并继续调用发送子单元741、检测子单元742、判断子单元743,直至判断子单元743判断为否时,调用发射功率确定子单元745以用于令最低发射功率为上一测试发射功率。
应当理解,在此情况下,调整子单元744减小测试功率的步长可以小于增大测试功率的步长。
应当理解,在本实施例中,调整子单元744可以但不限于以等间隔的方式减小或者增大发射功率。
本实施例在实施例7的基础上,以结合粗调和微调的方式,提供了一种更加精确地,在确保丢包率的情况下,测试终端设备可接收的最低发射功率的实现方式,从而进一步促进测试的自动化,提高自动化测试的效率。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。