一种自动化统计Android播放器性能数据的系统及方法与流程

文档序号:23628798发布日期:2021-01-12 10:42阅读:123来源:国知局
一种自动化统计Android播放器性能数据的系统及方法与流程

本发明涉及流媒体播放技术领域,更具体的说是涉及一种自动化统计android播放器性能数据的系统及方法。



背景技术:

多媒体播放功能是消费电子产品的核心功能之一,大量消费电子产品基于android系统,android播放器开发的高效性和播放器性能是流媒体开发领域重点关注的问题。android播放器统计性能数据是开发和测试中必不可少的环节之一,目前的统计方法包括两种,一种是通过抓取log进行人为分析,该方法需要分析大量样本,存在操作复杂且耗时耗力的缺陷;另一种是通过掐秒表获取多组数据计算平均值,该方法存在精确度低、主观性强的缺陷。



技术实现要素:

本发明的目的在于提供一种自动化统计android播放器性能数据的系统及方法,以期解决背景技术中存在的技术问题,主要针对android播放器性能数据统计存在操作复杂、精确度低、主观性强的缺陷提出了一个系统,该系统通过自动化控制交互、自动化分析数据实现简单、精确的获取android播放器的性能数据,提高开发效率,优化播放器体验。

为了实现上述目的,本发明采用以下技术方案:

一种自动化统计android播放器性能数据的系统,包括:数据存储模块,播放控制模块和数据分析模块,所述数据存储模块用于存储所述播放控制模块所需的流媒体信息和接收所述数据分析模块上传的统计结果;所述播放控制模块用于在数据存储模块内获取实现控制被测试设备的交互操作所需的流媒体信息;所述数据分析模块用于分析被测试设备的交互操作数据获得统计结果上传至数据存储模块。

进一步的,所述播放控制模块包括获取模块和交互控制模块,所述获取模块用于获取被测试设备测试所需的流媒体信息,所述交互控制模块用于将所述获取模块获取的流媒体信息传递给被测试设备实现交互操作。

本发明还提供了一种自动化统计android播放器性能数据的方法,包括上述系统,包括交互控制处理流程和数据分析流程:其中,

所述交互控制处理流程是播放控制模块从数据存储模块中筛选流媒体信息,通过串口发送命令控制被测试设备播放器进行交互操作;所述数据分析流程是通过adb抓取log进行分析,并将结果上传数据存储模块;交互控制处理流程和数据分析流程同步进行。

其中,所述交互控制处理流程,具体包括以下步骤:

sa100:通过串口线连接电脑和被测试设备,读取配置文件,配置文件中配置了被测试设备的ip地址、串口属性、版本等信息,获得串口属性,并连接串口;

sa200:播放控制模块从数据存储模块筛选n个符合条件的流媒体信息,获得流媒体信息起播命令存放到媒体列表;

sa300:通过串口发送起播命令控制被测试设备播放器进行起播;

sa400:播放过程中根据测试需求进行seek、发送命令获取内存/cpu占用;

sa500:退出播放;

sa600:判断播放列表是否为空,若播放列表已经为空就结束测试并退出,否则跳转到步骤sa300继续循环执行,直到播放完媒体列表中的n个流媒体信息。

其中,所述数据分析流程,具体包括以下步骤:

sb100:从配置文件获取被测试设备ip,通过adb连接被测试设备;

sb200:执行adblogcat命令,分析每一行输出,并将输出保存到本地文件;

sb300:根据测试需要,通过过滤关键字手段计算得到播放结果和性能数据;

sb400:将播放结果和性能数据写进结果文件,并上传数据存储模块。

sb500:开发测试人员可从结果文件或数据存储库获取性能数据。

本发明与现有技术相比具有的有益效果是:

本发明提供的一种自动化统计android播放器性能数据的系统及方法,通过自动化控制交互,自动化分析数据实现自动化统计android播放器性能数据,解决android播放器统计性能数据存在操作复杂、精确度低、主观性强的缺陷。提高开发效率,优化播放器体验。

附图说明

图1是本发明的一种自动化统计android播放器性能数据的系统的模块组成图;

图2是本发明的一种自动化统计android播放器性能数据的方法的系统交互控制处理流程图;

图3是本发明的一种自动化统计android播放器性能数据的方法的数据分析流程图流程图。

具体实施方式

下面结合实施例对本发明作进一步的描述,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。基于本发明中的实施例,本领域的普通技术人员在没有做出创造性劳动前提下所获得的其他所用实施例,都属于本发明的保护范围。

实施例1:

根据图1所示,一种自动化统计android播放器性能数据的系统,包括:数据存储模块,播放控制模块和数据分析模块,所述数据存储模块用于存储所述播放控制模块所需的流媒体信息和接收所述数据分析模块上传的统计结果;所述播放控制模块用于在数据存储模块内获取实现控制被测试设备的交互操作所需的流媒体信息;所述数据分析模块用于分析被测试设备的交互操作数据获得统计结果上传至数据存储模块。

其中,流媒体信息包括起播命令(以amstart开头)、媒体分辨率、媒体码率、媒体时长、媒体名称、是否是杜比等,统计结果包括用例编号、测试时间、测试版本、测试设备ip、测试结果(通过或失败)、性能数据等字段。

所述播放控制模块基于python的pytest框架,播放控制模块包括获取模块和交互控制模块,所述获取模块用于获取被测试设备测试所需的流媒体信息,所述交互控制模块用于将所述获取模块获取的流媒体信息传递给被测试设备实现交互操作。主要将从数据存储模块中获取流媒体信息并通过串口发送命令控制android播放器起播、退出、seek、获取内存/cpu占用等;数据分析模块抓取播放器log进行分析获得性能数据,并将结果上传数据存储模块。通过adb执行log抓取命令,从抓取的log中通过指定关键字判断播放器播放情况,并根据统计目的分析出统计结果。并将结果传回数据存储模块。

本发明还提供了一种自动化统计android播放器性能数据的方法,包括上述系统,包括交互控制处理流程和数据分析流程:其中,

所述交互控制处理流程是播放控制模块从数据存储模块中筛选流媒体信息,通过串口发送命令控制被测试设备播放器进行交互操作;所述数据分析流程是通过adb抓取log进行分析,并将结果上传数据存储模块;交互控制处理流程和数据分析流程同步进行。

如附图2所示,是本发明的交互控制处理流程,例如统计seek响应速度的具体实施案例如下:

sa100:使用串口线连接android电视串口的电脑端口com3,读取配置文件串口属性,获得串口连接;

sa200:播放控制模块从从数据存储模块中选择100部片源(流媒体信息)的起播命令,存放到媒体列表;

sa300:通过串口发送片源起播命令,电视端成功起播;

sa400:通过串口发送电视遥控右键实现快进操作,10s后发送电视遥控左键实现快退,循环4次,一共进行了8次seek;

sa500:通过串口发送电视遥控返回键退出播放;

sa600:循环执行sa300、sa400、sa500一共100次;播放列表为空后结束测试用例。

如附图3所示,是本发明的数据分析流程图,例如统计seek响应速度的具体实施案例如下:

sb100:读取配置文件,获取被测试电视ip地址,通过adbconnectip连接被测试电视;

sb200:执行adblogcat-vthreadtime,获取每一行输出保存到log文件,分析该行log是有标识起播成功、seek结束、seek结束开始播放的关键字,并记录seek结束和seek结束开始起播的时间;

sb300:如果1分钟内没有检测到起播成功的关键字,表示播放失败,起播播放列表下一个片源。记录到seek结束和seek结束开始起播的时间后,后者时间减前者时间即seek响应速度;

sb400:将100*8=800次的seek响应速度求平均值即最终seek响应速度,结果写进结果文件,并上传到数据存储模块;

sb500:开发测试人员可以从结果文件和数据存储模块中获取统计的seek响应速度。自此,实现了自动化简单、精确统计android播放器的seek响应速度这一性能数据。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1