CN107454384A - 一种直播性能测试方法和装置 - Google Patents

一种直播性能测试方法和装置 Download PDF

Info

Publication number
CN107454384A
CN107454384A CN201710621604.1A CN201710621604A CN107454384A CN 107454384 A CN107454384 A CN 107454384A CN 201710621604 A CN201710621604 A CN 201710621604A CN 107454384 A CN107454384 A CN 107454384A
Authority
CN
China
Prior art keywords
live
test
player
class
address
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.)
Pending
Application number
CN201710621604.1A
Other languages
English (en)
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.)
Wangsu Science and Technology Co Ltd
Original Assignee
Wangsu Science and 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 Wangsu Science and Technology Co Ltd filed Critical Wangsu Science and Technology Co Ltd
Priority to CN201710621604.1A priority Critical patent/CN107454384A/zh
Publication of CN107454384A publication Critical patent/CN107454384A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/004Diagnosis, testing or measuring for television systems or their details for digital television systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/4424Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

本发明公开了一种直播性能测试方法,所述方法包括:搭建测试环境,并配置直播地址列表和更新时间;创建多个线程组,并根据线程组的数量启动相同数量的播放器;随机选取一个直播地址,持续下载所述直播地址对应的传输流文件及描述文件;根据所述直播地址的传输流文件及描述文件播放视频,进而获取直播的性能指标,并根据性能指标生成测试报告;本发明能够模拟大量用户并发直播,既检测直播视频中的各种异常情况,又降低了资源消耗及时间消耗;本发明还公开了一种直播性能测试装置。

Description

一种直播性能测试方法和装置
技术领域
本发明涉及网络技术领域,尤其涉及一种直播性能测试方法和装置。
背景技术
直播领域,视频直播有如下特点:视频持续不断播放,m3u8文件持续更新待播放文件描述,客户端不断重新请求m3u8文件,从而实现持续播放;直播占用带宽;支持超大用户量并发访问;性能测试需关注卡顿、花屏等异常情况出现概率。故需要对直播性能进行测试,以防止直播中产生卡顿、花屏等异常情况。
现有的直播性能测试的方法主要有并发下载视频文件和并发播放两种;采第一种用并发下载视频文件的方法理由是,播放视频是本地进行缓冲(下载),然后解码再播放,实际下载速度足够就可以正常播放,因此,根据下载速度判断性能优劣。第二种并发播放方法,可以真实测试播放性能。
但是,采用第一种测试方法存在以下问题:并发下载视频文件,卡顿、花屏等播放异常情况无法查看;需要编写程序,实现直播方式的下载(持续请求下载m3u8描述文件以及描述的ts视频文件);编写的程序需要支持多线程,才能在一个服务器上同时支持多个直播,减少资源消耗;缺少分布式机制。受限于带宽,一个服务器下载直播个数有限,模拟大规模用户,需要多台服务器同时下载。如果手动部署,耗时耗力。
采用第二种测试方法存在以下问题:技术起点高,需要播放器实现在一个服务器上播放多个直播。否则模拟大规模用户需要大量服务器,成本太高;而且一般服务器都是Linux操作系统,需要实现能在Linux上同时播放多个直播的播放器;缺少分布式机制,部署复杂,多个服务器手动部署时间长;资源消耗多,视频直播占用资源比较多,同样的效果,播放比下载更占用CPU资源。
综上,现有的直播性能测试满足既能关注播放异常情况,也可以实现大规模用户模拟降低资源消耗,同时减少研发特殊播放器的时间消耗。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种直播性能测试方法和装置。所述技术方案如下:
一方面,一种直播性能测试方法,包括以下步骤:
搭建测试环境,并配置直播地址列表和更新时间;
创建多个线程组,并根据线程组的数量启动相同数量的播放器;
随机选取一个直播地址,持续下载所述直播地址对应的传输流文件及描述文件;
根据所述直播地址的传输流文件及描述文件播放视频,进而获取直播的性能指标,并根据性能指标生成测试报告。
进一步的,搭建测试环境,并配置直播地址列表和更新时间的步骤,包括:
创建一个类,继承抽样客户端,并重写四个方法:参数初始化方法、测试任务更新下载方法、关闭测试方法、配置参数获取方法。
进一步的,创建一个类,继承抽样客户端,并重写四个方法:参数初始化方法、测试任务更新下载方法、关闭测试方法、配置参数获取方法的步骤之后,包括:
在测试任务更新下载方法中,创建播放器类,所述播放器类可随机选取预先设置好的直播平台的直播任务列表中的一个直播地址进行请求下载,并且配置了一个定时器,所述定时器根据用户配置的更新次数、间隔时间执行更新和下载。
进一步的,在测试任务更新下载方法中,创建播放器类,所述播放器类可随机选取预先设置好的直播平台的直播任务列表中的一个直播地址进行请求下载,并且配置了一个定时器,所述定时器根据用户配置的更新次数、间隔时间执行更新和下载的步骤之后,包括:
根据配置参数,生成可调用的数据包。
进一步的,性能指标包括传输流文件的延迟、缺失、视频观察反馈的至少一种。
另一方面,一种直播性能测试装置,包括:
测试环境搭建单元,用于搭建测试环境,并配置直播地址列表和更新时间;
下载测试单元,用于创建多个线程组,并根据线程组的数量启动相同数量的播放器;
所述播放器随机选取一个直播地址,持续下载所述直播地址对应的传输流文件及描述文件并播放视频;
报告生成单元,用于根据所述播放视频,获取直播的性能指标,并根据性能指标生成测试报告。
进一步的,测试环境搭建单元包括:
类及方法设置单元,用于创建一个类,继承抽样客户端,并重写四个方法:参数初始化方法、测试任务更新下载方法、关闭测试方法、配置参数获取方法。
进一步的,测试环境搭建单元还包括:
播放器设置单元,用于在测试任务更新下载方法中,创建播放器类,所述播放器类可随机选取预先设置好的直播平台的直播任务列表中的一个直播地址进行请求下载,并且配置了一个定时器,所述定时器根据用户配置的更新次数、间隔时间执行更新和下载。
进一步的,测试环境搭建单元还包括:
数据包生成单元,用于根据配置参数,生成可调用的数据包。
进一步的,性能指标包括传输流文件的延迟、缺失、视频观察反馈的至少一种。
本发明实施例提供的技术方案带来的有益效果是:通过搭建测试环境,并配置直播地址列表和更新时间;创建多个线程组,并根据线程组的数量启动相同数量的播放器;随机选取一个直播地址,持续下载所述直播地址对应的传输流文件及描述文件;根据所述直播地址的传输流文件及描述文件播放视频,进而获取直播的性能指标,并根据性能指标生成测试报告,能够模拟大量用户并发直播,既能检测直播视频的异常各种情况,由于是基于Jmeter的分布式和多线程功能实现了并发测试,无需增设服务器,故又降低了资源消耗及时间消耗。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的一种直播性能测试方法的流程图;
图2是本发明实施例一提供的一种直播性能测试方法的服务器架构图;
图3是本发明实施例二提供的一种直播性能测试方法的流程图;
图4是本发明实施例三提供的一种直播性能测试装置结构图;
图5是本发明实施例四提供的一种直播性能测试装置结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
第一实施例
参见图1所示,本发明第一实施例提供一种直播性能测试方法,包括步骤101~步骤104,详述如下。
步骤101:搭建测试环境,并配置直播地址列表和更新时间。
具体的,本发明是基于Jmeter,Jmeter是一种性能测试的开源测试工具,用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。它可以用于测试静态和动态资源,例如静态文件、Java小服务程序、CGI脚本、Java对象、数据库、FTP服务器等。Jmeter可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,Jmeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。此外,利用Jmeter成熟的分布式和多线程功能,适配直播下载方式,可用于快速部署,测试大访问量的流媒体服务器性能,通过在Jmeter测试工具上搭建测试环境,并配置具有多个直播地址的直播地址列表和更新时间。
步骤102:创建多个线程组,并根据线程组的数量启动相同数量的播放器。
具体的,所述多个播放器可同时下载不同的直播地址对应的传输流文件及描述文件。线程组配置多少个线程,就代表要同时并发多少个直播下载;支持多线程,通过启用Jmeter线程组功能来实现多个播放器可同时分别下载不同直播地址URL任务,也可以是同一个直播地址URL,并根据直播地址下载直播地址对应的传输流文件及描述文件;如此,利用Jmeter多线程功能实现同一个主机支持多个随机直播频道下载,更准确模拟用户请求。
其中,传输流文件(ts文件)视频编码主要格式h264/mpeg4,音频为acc/MP3,ts文件分为三层:ts层Transport Stream、pes层Packet Elemental Stream、es层ElementaryStream。es层就是音视频数据,pes层是在音视频数据上加了时间戳等对数据帧的说明信息,ts层就是在pes层加入数据流的识别和传输必须的信息;本发明的描述文件为m3u8,m3u8文件是指utf-8编码格式的m3u8文件,m3u8文件是记录了一个索引纯文本文件,打开它时播放软件并不是播放它,而是根据它的索引找到对应的音视频文件的网络地址进行在线播放。示范性的,本发明的一个创建线程组的方法为:创建线程组,配置线程数、所有线程启动时间、循环次数,线程组下创建Java请求,类名称选择HlsSampler,用户填写配置内容然后执行。
由于视频文件下载占用带宽较大,在同一个服务器上并发能力有限(受限于服务器带宽),在模拟大量用户访问,需要借助多台服务器分布式同时下载,请参图2,Jmeter客户端31通过多个Jmeter远程服务器32与待测服务器连接,以提高并行下载能力。
步骤103:随机选取一个直播地址,持续下载所述直播地址对应的传输流文件及描述文件。
具体的,播放器随机选取直播地址URL中的一个,进行持续下载相应的ts,m3u8文件,其更新时间为配置的更新时间。
步骤104:根据所述直播地址的传输流文件及描述文件播放视频,进而获取直播的性能指标,并根据性能指标生成测试报告。
具体的,播放器根据所述直播地址的传输流文件及描述文件播放视频,进而获取直播的性能指标,也可以采用随机选取直播视频观察,真实测试在压力下视频播放的质量。根据性能指标生成测试报告,或根据观测视频判断直播性能。所述性能指标包括传输流文件的延迟、缺失、视频观察反馈的至少一种。视频观察反馈包括视频包括卡顿、花屏等异常情况。
本发明实施例的直播性能测试方法,搭建测试环境,并配置直播地址列表和更新时间;创建多个线程组,并根据线程组的数量启动相同数量的播放器;随机选取一个直播地址,持续下载所述直播地址对应的传输流文件及描述文件;根据所述直播地址的传输流文件及描述文件播放视频,进而获取直播的性能指标,并根据性能指标生成测试报告;本发明能够模拟大量用户并发直播,既能检测直播视频播放的异常各种情况,由于是基于Jmeter的分布式和多线程功能实现了并发测试,无需增设服务器,故又降低了资源消耗及时间消耗。
第二实施例
参见图2所示,本发明第二实施例提供一种直播性能测试方法,包括步骤201~步骤203,详述如下。
步骤201:创建一个类,继承抽样客户端,并重写四个方法:参数初始化方法、测试任务更新下载方法、关闭测试方法、配置参数获取方法。
具体的,创建一个类,继承Jmeter的抽样客户端AbstractJavaSamplerClient,并重写AbstractJavaSamplerClient中的四个方法:参数初始化方法setupTest、测试任务更新下载方法runTest、关闭测试方法teardownTest、配置参数获取方法getDefaultParameters。
其中,getDefaultParameters用于获取前端输入的用户配置参数,setupTest用于将获取到的用户配置参数进行初始化,runTest具体实现测试任务更新下载功能,teardownTest为关闭测试。
步骤202:在测试任务更新下载方法中,创建播放器类,该播放器类可随机选取预先设置好的直播平台的直播任务列表中的一个直播地址进行请求下载,并且配置了一个定时器,所述定时器根据用户配置的更新次数、间隔时间执行更新和下载。
具体的,在runTest方法中,创建播放器类player,player随机选取预先设置好的直播平台的直播任务列表(直播URL)中的一个直播URL进行请求下载,并且配置了一个定时器(ScheduledExecutorService),定时器根据用户配置的更新次数、间隔时间执行更新和下载,具体实现方式为,定时器中通过调用Updater类,来周期更新所选取的直播URL中的playlist(即m3u8文件中的ts列表),每次获取的playlist和之前的playlist进行比较,如果有新的ts,则由下载Downloader;一般来说,直播URL的ts生成周期为10秒,故Updater更新的周期可设置为10秒,从而实现同步更新,本技术方案的其他实施例中,周期或更长,并不限于此。此外,为了配合实现Jmeter中的多线程组,Updater可通过实现Java中的Runnable,来支持多线程任务。
步骤203:根据配置参数,生成可调用的数据包。
具体的,开发完成,根据配置参数,生成数据包,其中,该数据包为Jar包,作为Jmeter的插件放在扩展库中,由Jmeter界面调用。
本发明实施例的直播性能测试方法,创建一个类,继承抽样客户端,并重写四个方法:参数初始化方法、测试任务更新下载方法、关闭测试方法、配置参数获取方法;在测试任务更新下载方法中,创建播放器类,该播放器类可随机选取预先设置好的直播平台的直播任务列表中的一个直播地址进行请求下载,并且配置了一个定时器,所述定时器根据用户配置的更新次数、间隔时间执行更新和下载;根据配置参数,生成可调用的数据包。本发明通过借助Jmeter的多线程,支持多个播放器直播,满足了大规模直播测试的需要,且通过生成插件的形式,可在需要使用的时候,直接通过Jmeter调用,操作简单且灵活。
第三实施例
参见图4所示,本发明第三实施例提供一种直播性能测试装置,与图1所示的直播性能测试方法相对应,能实现第一实施例中的直播性能测试方法的细节,并达到相同的效果。所述直播性能测试装置10包括:
测试环境搭建单元11,用于搭建测试环境,并配置直播地址列表和更新时间。
具体的,本发明是基于Jmeter来实现的,Jmeter是一种性能测试的开源测试工具,用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。它可以用于测试静态和动态资源,例如静态文件、Java小服务程序、CGI脚本、Java对象、数据库、FTP服务器等。Jmeter可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,Jmeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。此外,利用Jmeter成熟的分布式和多线程功能,适配直播下载方式,可用于快速部署,测试大访问量的流媒体服务器性能,通过在Jmeter测试工具上搭建测试环境,并配置具有多个直播地址的直播地址列表和更新时间。
下载测试单元12,用于创建多个线程组,并根据线程组的数量启动相同数量的播放器(图示中以12a、12b示例)。其中播放器12a和12b可同时下载不同的直播地址对应的传输流文件及描述文件。
具体的,线程组配置多少个线程,就代表要同时并发多少个直播下载;支持多线程,通过启用Jmeter线程组功能来实现多个播放器同时下载不同直播地址URL任务,也可以是同一个直播地址URL,并根据直播地址下载直播地址对应的传输流文件及描述文件;利用Jmeter多线程功能实现同一个主机支持多个随机直播频道下载,更准确模拟用户请求。
其中,传输流文件(ts文件)视频编码主要格式h264/mpeg4,音频为acc/MP3,ts文件分为三层:ts层Transport Stream、pes层Packet Elemental Stream、es层ElementaryStream。es层就是音视频数据,pes层是在音视频数据上加了时间戳等对数据帧的说明信息,ts层就是在pes层加入数据流的识别和传输必须的信息;本发明的描述文件为m3u8,m3u8文件是指utf-8编码格式的m3u8文件,m3u8文件是记录了一个索引纯文本文件,打开它时播放软件并不是播放它,而是根据它的索引找到对应的音视频文件的网络地址进行在线播放。示范性的,本发明的一个创建线程组的方法为:创建线程组,配置线程数、所有线程启动时间、循环次数,线程组下创建Java请求,类名称选择HlsSampler,用户填写配置内容然后执行。
播放器12a、12b分别随机选取一个直播地址,持续下载所述直播地址对应的传输流文件及描述文件,并基于该些文件播放视频。
具体的,播放器12a、12b分别随机选取直播地址URL中的一个,进行持续下载相应的ts,m3u8文件,其更新时间为配置的更新时间。
报告生成单元13,用于根据播放器基于所述直播地址的传输流文件及描述文件播放的视频,获取直播的性能指标,并根据性能指标生成测试报告。
具体的,根据播放器基于所述直播地址的传输流文件及描述文件播放的视频,获取直播的性能指标,也可以采用随机选取直播视频观察,真实测试在压力下视频播放的质量。根据性能指标生成测试报告,或根据观测视频判断直播性能。所述性能指标包括传输流文件的延迟、缺失、视频观察反馈的至少一种。视频观察反馈包括视频包括卡顿、花屏等异常情况。
本发明实施例的直播性能测试装置,搭建测试环境,并配置直播地址列表和更新时间;创建多个线程组,并根据线程组的数量启动相同数量的播放器,所述播放器同时下载不同的直播地址对应的传输流文件及描述文件;随机选取一个直播地址,持续下载所述直播地址对应的传输流文件及描述文件;根据所述直播地址的传输流文件及描述文件播放视频,进而获取直播的性能指标,并根据性能指标生成测试报告;本发明能够模拟大量用户并发直播,既能检测直播视频的异常情况,又降低了资源消耗及时间消耗。
第四实施例
参见图5所示,本发明第四实施例提供一种直播性能测试装置,与图2所示的直播性能测试方法相对应,能实现第一实施例中的直播性能测试方法的细节,并达到相同的效果。所述直播性能测试装置包括测试环境搭建单元11,所述测试环境搭建单元11包括:
类及方法设置单元111,用于创建一个类,继承抽样客户端,并重写四个方法:参数初始化方法、测试任务更新下载方法、关闭测试方法、配置参数获取方法。
具体的,创建一个类继承Jmeter的抽样客户端AbstractJavaSamplerClient,并重写AbstractJavaSamplerClient中的四个方法:参数初始化方法setupTest、测试任务更新下载方法runTest、关闭测试方法teardownTest、配置参数获取方法getDefaultParameters。
其中,getDefaultParameters用于获取前端输入的用户配置参数,setupTest用于将获取到的用户配置参数进行初始化,runTest具体实现测试任务更新下载功能,teardownTest为关闭测试。
播放器设置单元112,用于在测试任务更新下载方法中,创建播放器类,该播放器类可随机选取预先设置好的直播平台的直播任务列表中的一个直播地址进行请求下载,并且配置了一个定时器,所述定时器根据用户配置的更新次数、间隔时间执行更新和下载。
具体的,在runTest方法中,创建播放器类player,该播放器随机选取预先设置好的直播平台的直播任务列表(直播URL)中的一个直播URL进行请求下载,并且配置了一个定时器(ScheduledExecutorService),定时器根据用户配置的更新次数、间隔时间执行更新和下载,具体实现方式为,定时器中通过调用Updater类,来周期更新所选取的直播URL中的playlist(即m3u8文件中的ts列表),每次获取的playlist和之前的playlist进行比较,如果有新的ts,则进行下载Downloader;一般来说,直播URL的ts生成周期为10秒,故Updater更新的周期可设置为10秒,从而实现同步更新,本技术方案的其他实施例中,周期或更长,并不限于此。此外,为了配合实现Jmeter中的多线程组,Updater可通过实现Java中的Runnable,来支持多线程任务。
数据包生成单元113,用于根据配置参数,生成可调用的数据包。
具体的,开发完成,根据配置参数,生成数据包,其中,该数据包为Jar包,作为Jmeter的插件放在扩展库中,由Jmeter界面调用。
本发明实施例的直播性能测试装置,创建一个类,继承抽样客户端,并重写四个方法:参数初始化方法、测试任务更新下载方法、关闭测试方法、配置参数获取方法;在测试任务更新下载方法中,创建播放器类,该播放器类可随机选取预先设置好的直播平台的直播任务列表中的一个直播地址进行请求下载,并且配置了一个定时器,所述定时器根据用户配置的更新次数、间隔时间执行更新和下载;根据配置参数,生成可调用的数据包。本发明通过多线程,支持多个播放器直播,满足了大规模直播测试的需要。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种直播性能测试方法,其特征在于,所述方法包括:
搭建测试环境,并配置直播地址列表和更新时间;
创建多个线程组,并根据线程组的数量启动相同数量的播放器;
随机选取一个直播地址,持续下载所述直播地址对应的传输流文件及描述文件;
根据所述直播地址的传输流文件及描述文件播放视频,进而获取直播的性能指标,并根据性能指标生成测试报告。
2.根据权利要求1所述的方法,其特征在于,所述搭建测试环境,并配置直播地址列表和更新时间的步骤,包括:
创建一个类,继承抽样客户端,并重写四个方法:参数初始化方法、测试任务更新下载方法、关闭测试方法、配置参数获取方法。
3.根据权利要求2所述的方法,其特征在于,所述创建一个类,继承抽样客户端,并重写四个方法:参数初始化方法、测试任务更新下载方法、关闭测试方法、配置参数获取方法的步骤之后,包括:
在测试任务更新下载方法中,创建播放器类,所述播放器类可随机选取预先设置好的直播平台的直播任务列表中的一个直播地址进行请求下载,并且配置了一个定时器,所述定时器根据用户配置的更新次数、间隔时间执行更新和下载。
4.根据权利要求3所述的方法,其特征在于,所述在测试任务更新下载方法中,创建播放器类,所述播放器类可随机选取预先设置好的直播平台的直播任务列表中的一个直播地址进行请求下载,并且配置了一个定时器,所述定时器根据用户配置的更新次数、间隔时间执行更新和下载的步骤之后,包括:
根据配置参数,生成可调用的数据包。
5.根据权利要求1所述的方法,其特征在于,所述性能指标包括传输流文件的延迟、缺失、视频观察反馈的至少一种。
6.一种直播性能测试装置,其特征在于,所述装置包括:
测试环境搭建单元,用于搭建测试环境,并配置直播地址列表和更新时间;
下载测试单元,用于创建多个线程组,并根据线程组的数量启动相同数量的播放器;
所述播放器随机选取一个直播地址,持续下载所述直播地址对应的传输流文件及描述文件并播放视频;
报告生成单元,用于根据所述播放视频,获取直播的性能指标,并根据性能指标生成测试报告。
7.根据权利要求6所述的测试装置,其特征在于,所述测试环境搭建单元包括:
类及方法设置单元,用于创建一个类,继承抽样客户端,并重写四个方法:参数初始化方法、测试任务更新下载方法、关闭测试方法、配置参数获取方法。
8.根据权利要求7所述的测试装置,其特征在于,所述测试环境搭建单元还包括:
播放器设置单元,用于在测试任务更新下载方法中,创建播放器类,所述播放器类可随机选取预先设置好的直播平台的直播任务列表中的一个直播地址进行请求下载,并且配置了一个定时器,所述定时器根据用户配置的更新次数、间隔时间执行更新和下载。
9.根据权利要求8所述的测试装置,其特征在于,所述测试环境搭建单元还包括:
数据包生成单元,用于根据配置参数,生成可调用的数据包。
10.根据权利要求6所述的测试装置,其特征在于,所述性能指标包括传输流文件的延迟、缺失、视频观察反馈的至少一种。
CN201710621604.1A 2017-07-27 2017-07-27 一种直播性能测试方法和装置 Pending CN107454384A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710621604.1A CN107454384A (zh) 2017-07-27 2017-07-27 一种直播性能测试方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710621604.1A CN107454384A (zh) 2017-07-27 2017-07-27 一种直播性能测试方法和装置

Publications (1)

Publication Number Publication Date
CN107454384A true CN107454384A (zh) 2017-12-08

Family

ID=60489703

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710621604.1A Pending CN107454384A (zh) 2017-07-27 2017-07-27 一种直播性能测试方法和装置

Country Status (1)

Country Link
CN (1) CN107454384A (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108650520A (zh) * 2018-03-30 2018-10-12 北京金山安全软件有限公司 一种视频直播控制方法、相关设备及计算机存储介质
CN108738061A (zh) * 2018-05-30 2018-11-02 广东万丈金数信息技术股份有限公司 基于cmpp3.0协议的短信发送性能测试方法及系统
CN108900382A (zh) * 2018-07-18 2018-11-27 腾讯科技(深圳)有限公司 测试方法及其装置
CN109739762A (zh) * 2018-12-29 2019-05-10 微梦创科网络科技(中国)有限公司 一种应用程序的性能测试方法与装置
CN109921937A (zh) * 2019-03-15 2019-06-21 杭州当虹科技股份有限公司 一种对流协议长时间任务进行自动验证的测试系统及方法
CN109981628A (zh) * 2019-03-18 2019-07-05 网易(杭州)网络有限公司 网络直播软件性能的监控方法及装置、电子设备
CN110012344A (zh) * 2019-02-25 2019-07-12 努比亚技术有限公司 一种视频下载方法、终端及计算机可读存储介质
CN110381308A (zh) * 2019-07-01 2019-10-25 北京字节跳动网络技术有限公司 一种测试直播视频处理效果的系统
CN111064952A (zh) * 2019-11-27 2020-04-24 湖南快乐阳光互动娱乐传媒有限公司 自动化测试方法、装置及系统
CN111246239A (zh) * 2020-02-12 2020-06-05 广州虎牙科技有限公司 对直播节目的测试的方法、系统、装置、设备和存储介质
CN111581065A (zh) * 2020-04-13 2020-08-25 微梦创科网络科技(中国)有限公司 一种基于直播场景下的移动端消息分压测试系统及方法
CN112153410A (zh) * 2020-09-30 2020-12-29 郑州信大捷安信息技术股份有限公司 一种流媒体服务高并发测试方法和系统
CN113709514A (zh) * 2021-09-02 2021-11-26 北京一起教育科技有限责任公司 一种数据处理方法、装置和电子设备
CN113824973A (zh) * 2021-08-04 2021-12-21 杭州星犀科技有限公司 多平台直推推流的方法、系统、电子装置和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6823380B1 (en) * 2000-08-07 2004-11-23 Microsoft Corporation System and method providing continual rate requests
CN1852180A (zh) * 2005-12-12 2006-10-25 华为技术有限公司 一种多媒体服务系统性能测试方法
TW200715111A (en) * 2005-10-07 2007-04-16 Inventec Corp Test method of multi-line network pressure
CN101286904A (zh) * 2008-06-16 2008-10-15 中兴通讯股份有限公司 流媒体服务器的并发负载测试装置及测试方法
CN101291260A (zh) * 2007-09-25 2008-10-22 深圳市同洲电子股份有限公司 一种用于流媒体服务的负载测试系统以及测试方法
CN105306299A (zh) * 2015-11-02 2016-02-03 上海聚力传媒技术有限公司 一种流媒体服务器性能测试方法及测试系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6823380B1 (en) * 2000-08-07 2004-11-23 Microsoft Corporation System and method providing continual rate requests
TW200715111A (en) * 2005-10-07 2007-04-16 Inventec Corp Test method of multi-line network pressure
CN1852180A (zh) * 2005-12-12 2006-10-25 华为技术有限公司 一种多媒体服务系统性能测试方法
CN101291260A (zh) * 2007-09-25 2008-10-22 深圳市同洲电子股份有限公司 一种用于流媒体服务的负载测试系统以及测试方法
CN101286904A (zh) * 2008-06-16 2008-10-15 中兴通讯股份有限公司 流媒体服务器的并发负载测试装置及测试方法
CN105306299A (zh) * 2015-11-02 2016-02-03 上海聚力传媒技术有限公司 一种流媒体服务器性能测试方法及测试系统

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108650520B (zh) * 2018-03-30 2020-09-04 北京金山安全软件有限公司 一种视频直播控制方法、相关设备及计算机存储介质
CN108650520A (zh) * 2018-03-30 2018-10-12 北京金山安全软件有限公司 一种视频直播控制方法、相关设备及计算机存储介质
CN108738061A (zh) * 2018-05-30 2018-11-02 广东万丈金数信息技术股份有限公司 基于cmpp3.0协议的短信发送性能测试方法及系统
CN108738061B (zh) * 2018-05-30 2021-08-27 广东万丈金数信息技术股份有限公司 基于cmpp3.0协议的短信发送性能测试方法及系统
CN108900382A (zh) * 2018-07-18 2018-11-27 腾讯科技(深圳)有限公司 测试方法及其装置
CN109739762A (zh) * 2018-12-29 2019-05-10 微梦创科网络科技(中国)有限公司 一种应用程序的性能测试方法与装置
CN110012344A (zh) * 2019-02-25 2019-07-12 努比亚技术有限公司 一种视频下载方法、终端及计算机可读存储介质
CN109921937A (zh) * 2019-03-15 2019-06-21 杭州当虹科技股份有限公司 一种对流协议长时间任务进行自动验证的测试系统及方法
CN109981628B (zh) * 2019-03-18 2021-11-23 网易(杭州)网络有限公司 网络直播软件性能的监控方法及装置、电子设备
CN109981628A (zh) * 2019-03-18 2019-07-05 网易(杭州)网络有限公司 网络直播软件性能的监控方法及装置、电子设备
CN110381308B (zh) * 2019-07-01 2021-06-15 北京字节跳动网络技术有限公司 一种测试直播视频处理效果的系统
CN110381308A (zh) * 2019-07-01 2019-10-25 北京字节跳动网络技术有限公司 一种测试直播视频处理效果的系统
CN111064952A (zh) * 2019-11-27 2020-04-24 湖南快乐阳光互动娱乐传媒有限公司 自动化测试方法、装置及系统
CN111246239A (zh) * 2020-02-12 2020-06-05 广州虎牙科技有限公司 对直播节目的测试的方法、系统、装置、设备和存储介质
CN111581065A (zh) * 2020-04-13 2020-08-25 微梦创科网络科技(中国)有限公司 一种基于直播场景下的移动端消息分压测试系统及方法
CN112153410A (zh) * 2020-09-30 2020-12-29 郑州信大捷安信息技术股份有限公司 一种流媒体服务高并发测试方法和系统
CN112153410B (zh) * 2020-09-30 2022-02-22 郑州信大捷安信息技术股份有限公司 一种流媒体服务高并发测试方法和系统
CN113824973A (zh) * 2021-08-04 2021-12-21 杭州星犀科技有限公司 多平台直推推流的方法、系统、电子装置和存储介质
CN113709514A (zh) * 2021-09-02 2021-11-26 北京一起教育科技有限责任公司 一种数据处理方法、装置和电子设备
CN113709514B (zh) * 2021-09-02 2023-06-23 北京一起教育科技有限责任公司 一种数据处理方法、装置和电子设备

Similar Documents

Publication Publication Date Title
CN107454384A (zh) 一种直播性能测试方法和装置
US8762113B2 (en) Method and apparatus for load testing online server systems
US20120155292A1 (en) Mobile hardware and network environment simulation
US9405665B1 (en) Application testing based on user input captured during a trial period and priority scheme analysis
CN104541247B (zh) 用于调整云计算系统的系统和方法
US9485305B2 (en) API platform that includes server-executed client-based code
CN107656957A (zh) 推广内容推送方法、装置、系统及存储介质
CN110019081A (zh) 数据持久化处理方法、装置、系统及可读存储介质
CN101447994A (zh) 多媒体文件的下载播放方法及设备
CN107908401B (zh) 基于Unity引擎的多媒体文件制作方法
CN109165050A (zh) 程序的运行方法、装置、计算设备以及存储介质
EP2734971A2 (en) Web-based music partner systems and methods
CN109739762A (zh) 一种应用程序的性能测试方法与装置
CN104463932B (zh) 实现动画效果的方法和装置
US20190098372A1 (en) Method and apparatus for adjusting virtual reality scene, and storage medium
CN106358047A (zh) 一种播放流媒体视频的方法及装置
CN107888717A (zh) 一种域名确定方法、装置及电子设备
CN110784753A (zh) 互动视频播放方法及装置、存储介质、电子设备
CN104104645A (zh) 一种跨平台资源管理方法和系统
US9292081B2 (en) Systems and methods for programmatically interacting with a media player
CN108255366A (zh) 一种现场音乐音效的更新方法、装置及系统
CN106028144A (zh) 电视终端中的音视频资源监控方法、装置及电视终端
CN103648021B (zh) 从usb存储设备播放网络视频文件的方法
CN103326957B (zh) 一种浏览器中进行流量控制的方法和装置
CN108650520A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20171208