流媒体场景的测试方法、装置及系统、存储介质与流程

文档序号:28591107发布日期:2022-01-22 08:13阅读:281来源:国知局
流媒体场景的测试方法、装置及系统、存储介质与流程

1.本技术涉及互联网领域,具体而言,涉及一种流媒体场景的测试方法、装置及系统、存储介质。


背景技术:

2.为了保证流媒体业务的正常运行,往往在流媒体业务上线前进行流媒体测试,相关技术中的测试方法是:基于各个厂商自身的服务日志,通过日志打印实现测试,或者基于一些开源的工具,比如利用多媒体处理工具ffmpeg(ffmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序,采用lgpl或gpl许可证,它提供了录制、转换以及流化音视频的完整解决方案)来测试某个业务场景。
3.上述的日志打印指的是由直播cdn服务产生的业务日志输出,根据这些日志可以一定程度上判断服务是否正常,如果报错,可以根据这些日志来判断出错的原因,日志的特点是数据量较大,难以自动从里面提取直观的业务信息,因为直播cdn是分布式的,分布在多个区域机房中,测试的时候不太可能去统计每个机房服务的业务日志信息。
4.相关技术中的方案不直观,比如基于日志解析的测试方法,如果日志打印错误就可能导致测试方案不通过,但是实际上功能并没有问题,如果研发改变日志打印方式,测试就需要重新编写相应的测试方案,维护效率和成本都非常高,另外日志的收集工作也非常繁杂,会导致测试效率较低。
5.针对上述的问题,目前尚未提出有效的解决方案。


技术实现要素:

6.本技术实施例提供了一种流媒体场景的测试方法、装置及系统、存储介质,以至少解决相关技术中进行流媒体测试的效率较低的技术问题。
7.根据本技术实施例的一个方面,提供了一种流媒体场景的测试系统,包括:测试系统包括客户端、内容分发端以及服务端,其中,客户端用于对配置文件进行配置得到用于测试目标服务的配置信息,并根据目标服务的测试数据确定测试结果,其中,目标服务用于在客户端与服务端之间传输目标媒体内容时使用;内容分发端分别与客户端和服务端通信连接,内容分发端用于按照配置信息在客户端与服务端之间传输目标媒体内容;服务端用于获取在传输目标媒体内容时对目标服务进行测试得到的测试数据。
8.根据本技术实施例的另一方面,还提供了一种流媒体场景的测试方法,包括:应用于客户端,方法包括:对配置文件进行配置得到用于测试目标服务的配置信息,其中,目标服务用于在客户端与测试端之间传输目标媒体内容时使用;按照配置信息在客户端与测试端之间传输目标媒体内容;根据目标服务的测试数据确定测试结果,其中,测试数据是在传输目标媒体内容时对目标服务进行测试得到的数据。
9.根据本技术实施例的另一方面,还提供了一种流媒体场景的测试方法,包括:应用于内容分发端,方法包括:获取配置信息,其中,配置信息是客户端对配置文件进行配置得
到的用于测试目标服务的信息,目标服务用于在客户端与测试端之间传输目标媒体内容时使用,客户端用于根据对目标服务进行测试得到的测试数据确定测试结果;按照配置信息在客户端与测试端之间传输目标媒体内容。
10.根据本技术实施例的另一方面,还提供了一种流媒体场景的测试方法,包括:,应用于测试端,方法包括:按照配置信息在客户端与测试端之间传输目标媒体内容,其中,配置信息是客户端对配置文件进行配置得到用于测试目标服务的信息,目标服务用于在客户端与测试端之间传输目标媒体内容时使用;将传输目标媒体内容时对目标服务进行测试得到的测试数据发送给客户端,其中,客户端用于根据测试数据确定测试结果。
11.根据本技术实施例的另一方面,还提供了一种流媒体场景的测试装置,包括:应用于客户端,装置包括:配置单元,用于对配置文件进行配置得到用于测试目标服务的配置信息,其中,目标服务用于在客户端与测试端之间传输目标媒体内容时使用;第一传输单元,用于按照配置信息在客户端与测试端之间传输目标媒体内容;测试单元,用于根据目标服务的测试数据确定测试结果,其中,测试数据是在传输目标媒体内容时对目标服务进行测试得到的数据。
12.根据本技术实施例的另一方面,还提供了一种流媒体场景的测试装置,包括:应用于内容分发端,装置包括:获取单元,用于获取配置信息,其中,配置信息是客户端对配置文件进行配置得到的用于测试目标服务的信息,目标服务用于在客户端与测试端之间传输目标媒体内容时使用,客户端用于根据对目标服务进行测试得到的测试数据确定测试结果;第二传输单元,用于按照配置信息在客户端与测试端之间传输目标媒体内容。
13.根据本技术实施例的另一方面,还提供了一种流媒体场景的测试装置,包括:应用于测试端,装置包括:第三传输单元,用于按照配置信息在客户端与测试端之间传输目标媒体内容,其中,配置信息是客户端对配置文件进行配置得到用于测试目标服务的信息,目标服务用于在客户端与测试端之间传输目标媒体内容时使用;发送单元,用于将传输目标媒体内容时对目标服务进行测试得到的测试数据发送给客户端,其中,客户端用于根据测试数据确定测试结果。
14.根据本技术实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,程序运行时执行上述的方法。
15.根据本技术实施例的另一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器通过计算机程序执行上述的方法。
16.在本技术实施例中,提供了一套流媒体场景的测试系统,在测试时,在客户端中对配置文件进行配置得到用于测试目标服务的配置信息,并根据所述目标服务的测试数据确定测试结果即可,而不用每次测试时都编写完整的测试方案,更加不用手动收集相关信息,可以解决相关技术中进行流媒体测试的效率较低的技术问题,进而达到提高测试效率的技术效果。
附图说明
17.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
18.图1是根据本技术实施例的一种可选的流媒体场景的测试系统的流程图;
19.图2是根据本技术实施例的一种可选的流媒体场景的测试方法的流程图;
20.图3是根据本技术实施例的一种可选的流媒体场景的测试方法的流程图;
21.图4是根据本技术实施例的一种可选的流媒体场景的测试方法的流程图;
22.图5是根据本技术实施例的一种可选的流媒体场景的测试装置的示意图;
23.图6是根据本技术实施例的一种可选的流媒体场景的测试装置的示意图;
24.图7是根据本技术实施例的一种可选的流媒体场景的测试装置的示意图;以及,
25.图8是根据本技术实施例的一种终端的结构框图。
具体实施方式
26.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
27.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
28.首先,在对本技术实施例进行描述的过程中出现的部分名词或者术语适用于如下解释:
29.tcp:传输控制协议(tcp,transmission control protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由ietf的rfc 793定义。
30.udp:internet协议集支持一个无连接的传输协议,该协议称为用户数据报协议(udp,user datagram protocol)。udp为应用程序提供了一种无需建立连接就可以发送封装的ip数据包的方法。
31.flv:是直播场景中常用的一种音视频的格式,一种音视频码流的封装格式,flv是flash video的简称,flv流媒体格式是随着flash mx的推出发展而来的视频格式,由于它形成的文件极小、加载速度极快,使得网络观看视频文件成为可能,它的出现有效地解决了视频文件导入flash后,使导出的swf文件体积庞大,不能在网络上很好的使用等问题。
32.软件测试需要一套成熟的测试框架,流媒体测试没有开源的相关框架。根据本技术实施例的一方面,提供了一种流媒体场景的测试系统的实施例。
33.可选地,在本实施例中,本技术的流媒体场景的测试方法可以应用于如图1所示的流媒体场景的测试系统。如图1所示,流媒体框架客户端c(后文简称客户端11)与直播内容分发端cdn(后文简称内容分发端13)通信连接,直播内容分发端cdn与流媒体框架服务端s(后文简称服务端15)通信连接,流媒体框架服务端s与流媒体框架数据端d(后文简称数据
端17)通信连接,流媒体框架数据端d与流媒体框架客户端c通信连接,其中,流媒体框架服务端s和流媒体框架数据端d是从功能上的区分,二者也可作为一个实体存在,即测试端。
34.客户端用于对配置文件进行配置得到用于测试目标服务的配置信息,并根据目标服务的测试数据确定测试结果,目标服务用于在客户端与服务端之间传输目标媒体内容时使用。客户端根据不同的测试方案,推拉流到直播cdn节点,直播cdn节点做数据的整理,然后从数据端获取推流的基本信息。
35.上述目标媒体内容为流媒体内容,客户端支持rtmp-flv、http-flv等格式的流媒体内容,支持flv等多种流媒体码流的实时解析(如利用tcp或者udp接收对端发送过来的二进制数据,框架底层把这些二进制数据依据flv的标准来做解析),根据不同的场景校验,客户端框架包含断言api设计(断言api是测试框架最上层的封装,作用就是如果程序正常的话就继续执行,直到执行结束,如果中间执行出现错误,立马中止执行)。
36.内容分发端分别与客户端和服务端通信连接,内容分发端用于按照配置信息在客户端与服务端之间传输目标媒体内容。
37.内容分发端的主要作用是按照配置信息进行推拉流,推流指的是把客户端采集阶段封包好的内容传输到服务器的过程,其实就是将现场的视频信号传到网络的过程;“推流”对网络要求比较高,如果网络不稳定,直播效果就会很差,观众观看直播时就会发生卡顿等现象,观看体验很是糟糕;拉流是指服务器已有直播内容,根据协议类型(如rtmp、rtp、rtsp、http等),与服务器建立连接并接收数据,进行拉取的过程,拉流端的核心处理在播放器端的解码和渲染,在互动直播中还需集成聊天室、点赞和礼物系统等功能。
38.服务端用于获取在传输目标媒体内容时对目标服务进行测试得到的测试数据。
39.上述流媒体测试的服务端,可支持rtmp-flv、http-flv、websocket-flv等流媒体协议,支持协议扩展,可以在框架上层进行各种协议的封装,底层只要实现上层调用接口,就能把大多数传输协议集成进来,比如kcp、quic等协议。
40.通过上述技术方案,提供了一套流媒体场景的测试系统,在测试时,在客户端中对配置文件进行配置得到用于测试目标服务的配置信息,并根据目标服务的测试数据确定测试结果即可,而不用每次测试时都编写完整的测试方案,更加不用手动收集相关信息,可以解决相关技术中进行流媒体测试的效率较低的技术问题,进而达到提高测试效率的技术效果。
41.可选地,系统还包括:数据端,数据端分别与服务端和客户端通信连接,数据端用于保存服务端上报的测试数据,并按照客户端的请求返回测试数据。
42.上述数据端(即流媒体框架数据端)用于提供流媒体数据的收集整合服务,收集服务端的建联(服务端与客户端,或者客户端与客户端之间建立tcp、udp连接)、码流等测试数据,并整合到本地,以便客户端根据不同的测试方案来此处获取结果,验证测试结果。上述的数据端仅仅是从功能上的描述,其可以作为独立硬件的存在,也可以和服务端集成在一起(即测试端)。
43.测试时,数据端接受服务端的数据上报、客户端的数据请求。内部实现逻辑上,对于不同的客户,有唯一的标识(unique_name),每个客户的每路流用“标识unique_name+应用app名称+流名streamname”来标识。客户端c想要去数据端获取测试结果,只要带上unique_name、app、streamname这些参数即可获取相应的case结果。
44.可选地,为了便于根据不同的测试方案进行配置,客户端包括:第一配置模块,第一配置模块用于在配置文件的第一地址字段中配置第一目标地址或在配置文件的第二地址字段中配置第二目标地址,第一目标地址为用于接收客户端发送到的第一媒体内容的地址,第二目标地址为用于客户端获取第二媒体内容的地址,目标媒体内容包括第一媒体内容和第二媒体内容。
45.相应地,内容分发端可包括:推流模块,推流模块用于按照从配置信息中解析出来的第一目标地址对第一媒体内容进行推流;拉流模块,拉流模块用于按照从配置信息中解析出来的第二目标地址将第二媒体内容拉流至客户端。
46.上述方案相当于提供模板化推拉流代码,比如要进行一个直播场景测试,主播a推流,观众b去拉流,测试时不用去写测试代码来实现“主播a推流、观众b去拉流”这个功能,只要创建一个配置文件,通过几个简单的命令就可以完成这个方案,方案中的代码是自动生成的,如使用配置项“publish”:{“url”:“rtmp://domain/app/name”}进行配置,有这个配置就会推流,“publish”表示推流,“url”之后的“rtmp://domain/app/name”是内容分发端推流到的目标地址”;类似地配置项“pull”:{“url”:“http://domain/app/name?args=param”中,“pull”表示拉流吗,“url”后的“http://domain/app/name?args=param”是内容分发端的拉流地址。
47.可选地,客户端包括:第二配置模块,第二配置模块用于将第一媒体内容的第一子内容配置为第一格式的媒体内容,并将第一媒体内容中的第二子内容配置为第二格式的媒体内容,其中,第一媒体内容包括多个子内容,多个子内容包括第一子内容和第二子内容,第一格式和第二格式为不同类型的媒体内容格式。
48.flv码流中包括一个个连续的音视频tag,可以理解为,flv主要成分是一个个连续的tag的集合,客户端支持rtmp-flv、http-flv、https-flv、websocket-flv等flv码流的解析,支持制作生成flv码流,并在flv中进行tag自定义,自定义tag可以在模拟flv码流异常的时候用,比如,自定义一种连续视频tag,间隔为15秒,中间都是音频tag的码流,这样可以测试服务端对这种码流的兼容性。
49.服务端可用于模拟流媒体服务集群,在流媒体服务集群中,集群主要按照边缘节点、区域节点、源站节点三类节点部署,源站节点一般来说两个或者三个做主备,边缘节点主要分布在目标范围的各个地方,区域节点一般主要作为二级节点缓解源站节点的压力,主要部署在主要的地点。
50.服务端可以作为直播cdn的模拟源站,上层,模拟边缘节点。可以通过配置来实现,客户端可包括:第三配置模块,第三配置模块用于在配置文件中配置第一信息、第二信息以及第三信息,第一信息用于指示服务端生成模拟源节点,第二信息用于指示服务端生成模拟边缘节点,第三信息用于指示生成位于模拟源节点和模拟边缘节点之间的模拟中间节点。
51.相应地,服务端包括:按照配置信息中的第一信息生成的模拟源节点;按照配置信息中的第二信息生成的模拟边缘节点;按照配置信息中的第三信息生成的模拟中间节点。
52.模拟源站:也是一个流媒体服务,模拟源站最基础的推拉流的功能。这个源站还有一个重要功能是信息的收集上报。在正常的场景中,直播cdn会与源站做各种业务的交互,测试直播cdn的时候,会让直播cdn与模拟源站交互,模拟源站会收集直播cdn的各种数据参
数,上报到服务端。
53.上层:直播cdn分成策略有边缘,上层,推拉流的时候,边缘回上层,上层回源站,即如果边缘没有数据就回上层拉取,如果上层没有就需要回源。
54.模拟边缘节点:测试框架cdn模拟节点的功能行为。
55.在测试时,直播cdn实现的所有功能(也是要测试的功能),由客户端去触发直播cdn的这些功能,直播cdn会去与测试源站、上层以及边缘等节点进行交互,测试源站、上层、边缘等节点的同时会收集交互信息,然后上报到数据端,客户端即可从数据端拿到直播cdn的这些功能的处理结果,以此来判断本次测试是否通过。
56.流媒体的服务端本质上就是实现了一个流媒体服务器,支持推拉流,加上了推拉流的数据整合上报功能,为了使得服务端支持rtmp-flv、http-flv等协议,并支持协议扩展,比如kcp、quic,服务端包括:存储协议集合的存储模块,协议集合中包括多个协议,每个协议用于表示使用一种传输格式在服务端与客户端之间传输目标媒体内容;协议扩展模块,协议扩展模块用于在协议集合中进行协议的增加、修改或者删除。
57.服务端,支持rtmp、http/https、quic、kcp等常规流媒体协议的推拉流,推拉流请求一般来自直播cdn服务(被测试的服务),收到推拉流请求后,会做一个标准flv码流的处理,然后收集基本信息(即测试信息),将信息上报到数据端。上报信息可定制,一般包含客户端client或server的ip地址、域名、应用app、流名(streamname)、客户唯一标识(unique_name)、推拉流的协议、携带的参数等,还可以包含flv数据流的一般字段,比如meta、时间戳是否从0开始、首帧音视频信息等。
58.客户端根据不同的测试需求,推拉流到直播cdn节点,直播cdn节点做数据的整理,然后从数据端d获取推流的基本信息,为了使客户端支持rtmp-flv、http-flv,支持flv码流实时解析,客户端包括:解码模块,解码模块用于采用与接收到媒体内容的传输格式匹配的解码器对媒体内容进行实时解码。
59.图2是根据本技术实施例的一种可选的流媒体场景的测试方法的流程图,应用于客户端,如图2所示,该方法可以包括以下步骤:
60.步骤s202,对配置文件进行配置得到用于测试目标服务的配置信息,目标服务用于在客户端与测试端之间传输目标媒体内容时使用。
61.步骤s204,按照配置信息在客户端与测试端之间传输目标媒体内容。
62.可选地,按照配置信息在客户端与测试端之间传输目标媒体内容包括:按照配置信息在客户端与服务端之间传输目标媒体内容,其中,测试端包括服务端。
63.步骤s206,根据目标服务的测试数据确定测试结果,测试数据是在传输目标媒体内容时对目标服务进行测试得到的数据。
64.可选地,在根据目标服务的测试数据确定测试结果之前,可从数据端获取测试数据,其中,数据端用于保存服务端上报的测试数据,并按照客户端的请求返回测试数据,测试端包括数据端。
65.例如,客户端触发任务,直播cdn去实现任务,任务的执行信息会通过模拟源站、模拟上层、模拟边缘汇总到数据端,最后客户端再去数据段拿执行结果,然后客户端去根据拿到的结果去判断是否成功。
66.图3是根据本技术实施例的一种可选的流媒体场景的测试方法的流程图,应用于
内容分发端,如图3所示,该方法可以包括以下步骤:
67.步骤s302,获取配置信息,配置信息是客户端对配置文件进行配置得到的用于测试目标服务的信息,目标服务用于在客户端与测试端之间传输目标媒体内容时使用,客户端用于根据对目标服务进行测试得到的测试数据确定测试结果。
68.步骤s304,按照配置信息在客户端与测试端之间传输目标媒体内容。
69.图4是根据本技术实施例的一种可选的流媒体场景的测试方法的流程图,应用于测试端,如图4所示,该方法可以包括以下步骤:
70.步骤s402,按照配置信息在客户端与测试端之间传输目标媒体内容,配置信息是客户端对配置文件进行配置得到用于测试目标服务的信息,目标服务用于在客户端与测试端之间传输目标媒体内容时使用。
71.可选地,按照配置信息在客户端与测试端之间传输目标媒体内容包括:按照配置信息在客户端与服务端之间传输目标媒体内容,其中,测试端包括服务端。
72.步骤s404,将传输目标媒体内容时对目标服务进行测试得到的测试数据发送给客户端,客户端用于根据测试数据确定测试结果。
73.可选地,将传输目标媒体内容时对目标服务进行测试得到的测试数据发送给客户端包括:在数据端上保存服务端上报的测试数据,并按照客户端的请求返回测试数据,其中,测试端包括数据端。
74.作为一种可选的实施例,下文结合具体的实施方式详述本技术的技术方案。
75.场景一,直播cdn拉流回友商,需要测试回源携带鉴权参数是否正确,是不是并行回源。
76.客户端c发起直播cdn拉流,触发直播cdn并行回源逻辑,直播cdn回框架服务端s拉流,服务端s记录每一路来自直播cdn的请求(包括请求url,请求参数,建立tcp连接的时间等),然后服务端s把这些记录下的数据上传到数据端d,客户端再去数据端d获取这些数据,判断是不是并行回源,请求的鉴权参数是否正确,服务端s可以模拟各种拉流异常场景,比如服务端s发送的首帧是视频/音频、发送卡顿流、发送时间戳不连续的码流等。
77.场景二,直播cdn推流转推友商。
78.客户端c发起直播cdn推流请求,触发直播cdn转推逻辑,直播cdn转推到框架服务端s,服务端s记录每一路推流的请求信息(请求url,建立tcp连接的时间,校验推流flv的tag信息是否正确等),然后s把这些记录下的数据上传到数据端d,客户端再去数据端d获取这些数据,然后判断直播cdn转推是否正常。服务端s可以模拟各种推流异常场景,比如模拟rtmp不给publisher响应streambegin信令、rtmp握手失败等。
79.场景三,直播cdn向外部接口发起推流鉴权请求。
80.客户端发起向直播cdn推流请求,直播cdn发起向框架服务端s的鉴权请求,服务端s记录直播cdn的请求url、请求次数、时间,然后向数据d做汇报,数据端d做信息汇总,客户端c再去数据端d获取这些信息,根据这些信息判断直播cdn的鉴权请求是否有异常。框架服务端s可以模拟接口响应异常、无法建立连接、鉴权失败、错误状态码(500,400,404)等,这些异常场景用来测试直播cdn在接口异常的情况下的业务逻辑是否正常。
81.采用本技术的技术方案,提供了完整通用的流媒体测试框架,能覆盖流媒体服务端测试的绝大部分业务场景,能根据客户的实际使用场景来实现业务测试,完全按照客户
的需求来开发,基于此框架开发,不会出现测试方案跑过而实际业务场景并没有测试通过的问题。在方案中,流媒体服务端s的数据整合,上报到数据端d,客户端c想要拿到结果只能从数据端d获取。
82.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
83.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本技术各个实施例所述的方法。
84.根据本技术实施例的另一个方面,还提供了一种用于实施上述流媒体场景的测试方法的流媒体场景的测试装置。图5是根据本技术实施例的一种可选的流媒体场景的测试装置的示意图,应用于客户端,如图5所示,该装置可以包括:
85.配置单元501,用于对配置文件进行配置得到用于测试目标服务的配置信息,其中,所述目标服务用于在所述客户端与所述测试端之间传输目标媒体内容时使用;
86.第一传输单元503,用于按照所述配置信息在客户端与测试端之间传输所述目标媒体内容;
87.测试单元505,用于根据所述目标服务的测试数据确定测试结果,其中,所述测试数据是在传输所述目标媒体内容时对所述目标服务进行测试得到的数据。
88.可选地,第一传输单元还可用于:按照所述配置信息在客户端与服务端之间传输所述目标媒体内容,其中,所述测试端包括所述服务端。
89.可选地,测试单元还可用于:在根据所述目标服务的测试数据确定测试结果之前,从数据端获取所述测试数据,其中,所述数据端用于保存所述服务端上报的所述测试数据,并按照所述客户端的请求返回所述测试数据,所述测试端包括所述数据端。
90.根据本技术实施例的另一个方面,还提供了一种用于实施上述流媒体场景的测试方法的流媒体场景的测试装置。图6是根据本技术实施例的一种可选的流媒体场景的测试装置的示意图,应用于内容分发端,如图6所示,该装置可以包括:
91.获取单元601,用于获取配置信息,其中,所述配置信息是客户端对配置文件进行配置得到的用于测试目标服务的信息,所述目标服务用于在所述客户端与所述测试端之间传输目标媒体内容时使用,所述客户端用于根据对所述目标服务进行测试得到的测试数据确定测试结果。
92.第二传输单元603,用于按照所述配置信息在所述客户端与所述测试端之间传输所述目标媒体内容。
93.根据本技术实施例的另一个方面,还提供了一种用于实施上述流媒体场景的测试方法的流媒体场景的测试装置。图7是根据本技术实施例的一种可选的流媒体场景的测试
装置的示意图,应用于测试端,如图7所示,该装置可以包括:
94.第三传输单元701,用于按照配置信息在客户端与测试端之间传输目标媒体内容,其中,所述配置信息是所述客户端对配置文件进行配置得到用于测试目标服务的信息,所述目标服务用于在所述客户端与所述测试端之间传输目标媒体内容时使用。
95.可选地,第三传输单元还可用于:按照所述配置信息在所述客户端与服务端之间传输所述目标媒体内容,其中,所述测试端包括所述服务端。
96.发送单元703,用于将传输所述目标媒体内容时对所述目标服务进行测试得到的测试数据发送给所述客户端,其中,所述客户端用于根据所述测试数据确定测试结果。
97.可选地,发送单元还可用于在数据端上保存所述服务端上报的所述测试数据,并按照所述客户端的请求返回所述测试数据,其中,所述测试端包括所述数据端。
98.此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现,其中,硬件环境包括网络环境。
99.根据本技术实施例的另一个方面,还提供了一种用于实施上述流媒体场景的测试方法的服务器或终端。
100.图8是根据本技术实施例的一种终端的结构框图,如图8所示,该终端可以包括:一个或多个(图8中仅示出一个)处理器801、存储器803、以及传输装置805,如图8所示,该终端还可以包括输入输出设备807。
101.其中,存储器803可用于存储软件程序以及模块,如本技术实施例中的流媒体场景的测试方法和装置对应的程序指令/模块,处理器801通过运行存储在存储器803内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的流媒体场景的测试方法。存储器803可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器803可进一步包括相对于处理器801远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
102.上述的传输装置805用于经由一个网络接收或者发送数据,还可以用于处理器与存储器之间的数据传输。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置805包括一个网络适配器(network interface controller,nic),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置805为射频(radio frequency,rf)模块,其用于通过无线方式与互联网进行通讯。
103.其中,具体地,存储器803用于存储应用程序。
104.处理器801可以通过传输装置805调用存储器803存储的应用程序,以执行下述步骤:
105.对配置文件进行配置得到用于测试目标服务的配置信息,其中,所述目标服务用于在所述客户端与所述测试端之间传输目标媒体内容时使用;
106.按照所述配置信息在客户端与测试端之间传输所述目标媒体内容;
107.根据所述目标服务的测试数据确定测试结果,其中,所述测试数据是在传输所述目标媒体内容时对所述目标服务进行测试得到的数据。
108.处理器801还用于执行下述步骤:
109.获取配置信息,其中,所述配置信息是客户端对配置文件进行配置得到的用于测试目标服务的信息,所述目标服务用于在所述客户端与所述测试端之间传输目标媒体内容时使用,所述客户端用于根据对所述目标服务进行测试得到的测试数据确定测试结果;
110.按照所述配置信息在所述客户端与所述测试端之间传输所述目标媒体内容。
111.处理器801还用于执行下述步骤:
112.按照配置信息在客户端与测试端之间传输目标媒体内容,其中,所述配置信息是所述客户端对配置文件进行配置得到用于测试目标服务的信息,所述目标服务用于在所述客户端与所述测试端之间传输目标媒体内容时使用;
113.将传输所述目标媒体内容时对所述目标服务进行测试得到的测试数据发送给所述客户端,其中,所述客户端用于根据所述测试数据确定测试结果。
114.可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
115.本领域普通技术人员可以理解,图8所示的结构仅为示意,终端可以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobile internet devices,mid)、pad等终端设备。图8其并不对上述电子装置的结构造成限定。例如,终端还可包括比图8中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图8所示不同的配置。
116.本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-only memory,rom)、随机存取器(random access memory,ram)、磁盘或光盘等。
117.本技术的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行流媒体场景的测试方法的程序代码。
118.可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。
119.可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
120.对配置文件进行配置得到用于测试目标服务的配置信息,其中,所述目标服务用于在所述客户端与所述测试端之间传输目标媒体内容时使用;
121.按照所述配置信息在客户端与测试端之间传输所述目标媒体内容;
122.根据所述目标服务的测试数据确定测试结果,其中,所述测试数据是在传输所述目标媒体内容时对所述目标服务进行测试得到的数据。
123.可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:
124.获取配置信息,其中,所述配置信息是客户端对配置文件进行配置得到的用于测试目标服务的信息,所述目标服务用于在所述客户端与所述测试端之间传输目标媒体内容时使用,所述客户端用于根据对所述目标服务进行测试得到的测试数据确定测试结果;
125.按照所述配置信息在所述客户端与所述测试端之间传输所述目标媒体内容。
126.可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:
127.按照配置信息在客户端与测试端之间传输目标媒体内容,其中,所述配置信息是
所述客户端对配置文件进行配置得到用于测试目标服务的信息,所述目标服务用于在所述客户端与所述测试端之间传输目标媒体内容时使用;
128.将传输所述目标媒体内容时对所述目标服务进行测试得到的测试数据发送给所述客户端,其中,所述客户端用于根据所述测试数据确定测试结果。
129.可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
130.可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
131.上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
132.上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。
133.在本技术的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
134.在本技术所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
135.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
136.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
137.以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1