发明内容
本发明的目的在于提供一种数字电视测试方法,旨在解决现有测试方法比较耗时耗力的问题。
本发明是这样实现的,一种数字电视测试方法,包括步骤:根据测试项目请求信息,获取测试网络数据包信息;分析所述网络数据包信息,获得测试结果信息;自动发送所述测试结果信息。
较优的,所述根据测试项目请求信息,获取网络数据包信息的步骤之前,进一步包括步骤:设置测试用例信息。
较优的,所述分析所述网络数据包信息,获得测试结果信息的步骤和自动发送所述测试结果信息的步骤之间,进一步包括步骤:判断测试项目是否测试完毕。
较优的,所述分析所述测试网络数据包信息,获得测试结果的步骤进一步包括:获取所述测试网络数据包信息中各子数据包中的标识位信息,排列数据交互过程中的子数据包顺序;分析所述子数据包进行分析,获得所述子数据包的测试数据;将所述测试数据与所述测试用例信息中的参考阈值进行比较,获得测试结果。
较优的,所述测试用例信息包括:测试用例项目名称信息、与测试用例项目相对应的子数据包信息、与测试用例项目名称相对应的测试步骤、测试次数和测试参数信息、以及测试参数的参考阈值信息。
较优的,所述测试用例项目的参数信息包括:网页指向信息、页面大小信息、页面传输的时间信息、页面的字体特征信息、页面布局信息。
较优的,所述测试项目请求信息包括:需要测试的项目名称信息、测试开始的指令信息。
较优的,所述自动发送所述测试结果包括:通过邮件或短信或提示框的方式自动发送所述测试结果。
本发明的另一目的在于提供一种数字电视终端测试设备,用于测试数字电视终端与前端服务器之间的通讯是否正常所述设备包括:测试用例设定模块,用于接收测试用例指令信息;测试用例执行模块,用于接收到测试指令信息后,按照测试用例模块的设定,进行测试;数据获取模块:用于接收和监测数字电视终端与前端之间的交互数据包信息;结果分析模块:用于分析所述数据接收模块接收的数据包信息,并与所述测试用例模块中的数据进行比较,得出测试结果;信息发送模块:用于发送所述结果分析模块得出的测试结果。
较优的,所述测试用例设定模块包括:指令接收模块:用于接收测试用例项目名称信息及开始进行测试的指令信息;数据设定模块:用于设定与所述测试用例项目相对应的子数据包信息;参数设定模块:用于设定所述与所述测试项目相对应测试参数、测试步骤、测试次数及测试参数的参考阈值信息。
本发明的再一目的在于提供一种数字电视测试系统,包括数字电视终端、前端服务器及终端测试设备,所述数字电视终端连接终端测试设备和前端服务器,用于接收终端测试设备的测试指令信息,根据所述指令信息与前端服务器建立通讯连接,并向所述前端服务器发送请求信息;所述前端服务器连接终端测试设备和数字电视终端,用于处理所述数字电视终端发送的请求信息,并根据所述请求信息将网络数据包发送至数字电视终端和终端测试设备;所述终端测试设备连接所述数字电视终端和前端服务器,用于设定测试用例信息、接收和发送测试指令信息、获取数字电视终端与前端服务器之间的网络通讯数据包后,对所述数据包进行分析后获得测试结果,发送所述测试结果。
本发明所公开的数字电视测试方法、系统和数字电视终端测试设备,可以实现数字电视终端和前端服务器之间的自动测试,既节省了人力物力,又能够保证测试的准确性,提高了测试效率,具有较高的实用性。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参见图1,为本发明实施例所提供的数字电视测试方法流程图。本发明所提供的数字电视测试方法,包括以下步骤:
步骤S20:根据测试项目请求信息,获取测试网络数据包信息。
一般,测试项目请求信息包括:需要测试的项目名称信息、测试开始的指令信息。当系统接收到测试开始的指令信息后,才会开始进行测试,如果指定了某一或某几个测试项目,则只测试指定的测试项目,如果没有特指某一或某几个测试项目,则默认需要测试全部的测试项目。
通常,数字电视终端接收到测试项目请求信息后,会与前端服务器进行通讯连接,当数字电视终端与前端服务器成功建立通讯连接后,前端服务器根据数字电视终端发送的请求指令信息,与数字电视终端进行信息交互,前端服务器与数字电视终端之间的信息交互通过网络数据包进行。此时,终端测试设备会抓取上述网络数据包。
步骤S40:分析所述网络数据包信息,获得测试结果信息。
请参见图2,该步骤进一步包括以下三个步骤,其中:步骤S401获取所述测试网络数据包信息中各子数据包中的标识位信息,排列数据交互过程中的子数据包顺序。当终端测试设备抓取到网络数据包后,对网络数据包中的各子数据包进行分析,抓取各网络数据包中含Seq位与标志位中的Syn位/Fin位子数据包。然后排列数据交互过程中的含Seq位与标志位中的Syn位/Fin位子数据包子的顺序。排序规则是:以Syn包为起始包,以Fin包为结束包,把数据包以SEQ相对值以从小到大的顺序排列或从大到小的顺序排列,然后进行拼包。
步骤S402:对各子数据包进行处理,获得各子数据包的测试数据。在本步骤中,终端测试设备需要对网络数据包中的各子数据包进行拼装处理,以Syn包为起始包,以Fin包为结束包,把数据包以SEQ相对值以从小到大的顺序排列或从大到小的顺序排列,然后进行拼包,得到数字电视终端与前端服务器之间交互过程中完整的网页信息,网页信息包括网页指向、节目名称、网页大小、字体大小、字体颜色、页面布局等信息。然后,可以根据最后一个子数据包到达的时间减去测试指令发送的时间,得到测试指令下发到数据接收完毕的页面反应时间,也即测试时间。S403将测试数据与所述测试用例信息进行比较,获得测试结果。
步骤 S403:将所述测试数据与所述测试用例信息进行比较,获得测试结果。在本步骤中,终端测试设备对测试用例中事先设定的测试参数(例如:测试参数可包括网页指向信息、页面大小信息、页面传输的时间信息、页面的字体特征信息、页面布局信息、音频信息等)的阈值与测试结果进行对比,对比过程中可以使用精确匹配模式也可以使用正则表达式模糊匹配模式,得出测试结果,同时结果自动保存在终端测试设备中。
步骤S60:自动发送所述测试结果信息。通常,可通过邮件或短信或提示框的方式自动发送所述测试结果。
当然,在本实施例中,在步骤S20之前,可进一步包括步骤:步骤S10:预先设置测试用例信息的步骤。在使用本发明所提供的方法进行数字电视终端与前端是否通讯正常的测试时,需要预先在终端的测试工具上设置好测试用例信息,通常,测试用例信息包括:测试用例项目名称信息,比如直播电视节目、时移电视、点播信息、定制节目、资讯信息等, 相应的,还要设置各个测试用例项目的子数据包信息和与各个测试用例项目名称相对应的测试步骤、测试次数和测试参数信息、以及各测试参数合格的阈值信息。
在本发明提供的数字电视测试方法的另一实施例中,在步骤S40和S60之间还可以包括步骤S50:判断测试项目请求是否执行完毕的步骤,如图3所示, 该步骤S50具体包括以下4个步骤: 步骤501:判断是否为最后一个测试项目,如果是,则执行步骤S503,如果不是,则执行步骤S502。
步骤S502继续下一个测试项目。完成后回到步骤S501,判断是否是最后一个测试项目。
步骤S503判断测试次数是否少于设定的次数,如果否,则执行步骤S60自动发送测试结果信息;如果是,则执行步骤S504测试次数自动增加一次,且重新开始测试选中的测试项目。
通过增加步骤S50,可是使系统自动判断选定的测试项目是否测试完毕,增加了测试的准确性,避免了少测试和重复测试的问题。
本发明另一实施例还提供了一种数字电视终端测试设备。参见图4,为本实施例所提供的数字电视测试设备结构框图。为了便于说明,本实施例仅示出了与本发明相关的部分。本发明提供的数字电视终端测试设备包括:测试用例设定模块101,用于接收测试用例指令信息;测试用例执行模块102,用于接收到测试指令信息后,按照测试用例模块的设定,进行测试;数据获取模块103,用于接收和监测数字电视终端与前端之间的交互数据包信息;结果分析模块104,用于分析所述数据接收模块接收的数据包信息,并与所述测试用例模块中的数据进行比较,得出测试结果;信息发送模块105,用于发送所述结果分析模块得出的测试结果。
进一步的,测试用例设定模块101包括:指令接收模块:用于接收测试用例项目名称信息及开始进行测试的指令信息;数据设定模块:用于设定与所述测试用例项目相对应的子数据包信息;参数设定模块:用于设定所述与所述测试项目相对应测试参数、测试步骤、测试次数及测试参数的参考阈值信息。
本终端设备的工作原理,与上一实施例的工作原理相同,此处不赘述。
请参见图5,为本发明另一实施例所提供的数字电视终端测试设备,与上一实施例相比,本实施例提供的终端测试设备,测试用例设定模块101,用于接收测试用例指令信息;测试用例执行模块102,用于接收到测试指令信息后,按照测试用例模块的设定,进行测试;数据获取模块103,用于接收和监测数字电视终端与前端之间的交互数据包信息;结果分析模块104,用于分析所述数据接收模块接收的数据包信息,并与所述测试用例模块中的数据进行比较,得出测试结果;信息发送模块105,用于发送所述结果分析模块得出的测试结果。测试判断模块106,用于判断测试项目请求是否执行完毕。
本实施例较上一实施例,增加了一测试判断模块106,可以有效防止漏测指定的测试项目或者测定测试出现误差的问题,保证了测试的完整性和准确性。
本发明另一目的在于提供一种数字电视测试系统,请参见图6,为本发明实施例所提供的数字电视测试系统结构框图。为了便于说明,仅列出了与本实施例相关的部分。
数字电视测试系统,包括数字电视终端3、前端服务器1及终端测试设备4,
数字电视终端3连接终端测试设备和前端服务器,用于接收终端测试设备的测试指令信息,根据指令信息与前端服务器1建立通讯连接,并向前端服务器发送请求信息1。
前端服务器1连接终端测试设备4和数字电视终端3,用于处理所述数字电视终端3发送的请求信息,并根据请求信息将网络数据包发送至数字电视终端3和终端测试设备4。
终端测试设备4连接数字电视终端3和前端服务器1,用于设定测试用例信息、接收和发送测试指令信息、获取数字电视终端与前端服务器之间的网络通讯数据包后,对数据包进行分析后获得测试结果,发送测试结果。
其中,前端服务器1与数字电视终端3之间通过集电器HUB进行通讯连接。
终端测试设备4与数字电视终端3之间通过串口线通讯连接。
终端测试设备4与前端服务器1之间通过集电器HUB2进行通讯连接。
其中,数字电视终端包括但不限于机顶盒、数字电视一体机和网络协议电视。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。