搜索
您的当前位置:首页正文

数字电视应用平台的自动化测试设计与实现

来源:爱go旅游网
数字电视应用平台的自动化测试设计与实现 庄子健(同济大学软件学院,上海200092) 摘 要:本文从数字电视应用项目的软件测试实践出发,根据软件测试基本原理和系统设计用例,选用合适的测试工具制定自动化测试脚 本,有效地提高系统回归测试质量,提升回归测试效率,确保产品质量稳定。 关键词:自动化测试脚本;软件测试;系统设计用例 1引言 ・随心点播系统通过电视机顶盒或电脑终端,甚至手机,为  随着软件产品在各个应用领域的普及,软件的质量问题逐 用户提供各种信息互动服务节目。用户可以随时浏览、购买、观看视频节目,并在观看节目 渐成为人们关注的焦点。质量不过关的软件产品在使用中可能 ・ 出现各种意想不到的问题。软件使用者经常发现一些已经推向 时进行暂停、快进、快退等流控操作。家用有线电视机顶盒、旅馆客房中的点播装置就是目前常 市场的产品,由于存在严重质量缺陷而导致大量退货,或者一再 ・返工,进行长期的修改和维护。这样不仅影响了软件提供商的 工作,额外提高了产品成本,也耽误了客户业务的开展,影响正 常工作,甚至会产生严重的或灾难性的后果…。 本文中的项目产品为“TvN0w”。TVN0w系统是国内 SeaChange公司针对国内市场推出的一套视频服务产品,能够 为客户提供实现媒体流点播,录播,实时收看等多种媒体服务 功能的硬件和软件的架构。笔者参与了这个项目的测试工作,主 要负责系统中的随心点播应用的测试用例设计,测试的管理, 测试文档的维护,测试环境的搭建,自动化测试软件的设计与 开发以及ADI ̄I试。 本课题研究主要从以下几方面着手:(1)根据TVNow系统的 需求设计测试用例。(2)针对测试的特点,开发出一套简单易用 的自动化测试脚本。(3)对整个自动化测试框架流程进行总体设 计。(4)TVNow ̄I试文档的编写与管理,在整个项目实施过程中, 指定项目进度。本项目自动化测试的目标是:提升工作效率50%, 加快测试进度50%,控制产品的bug数量在上一个版本中bug数 量的50%以下。 2数字电视平台应用性需求分析 数字电视交互业务平台(Back Office)为各个业务的接 入提供一个开放式的平台,对内屏蔽各业务系统的差异 ,对外 屏蔽内部各种复杂的业务逻辑,为新业务的快速接入提供有力 的支撑。业务平台层提供认证、鉴权、计费等业务控制能力和产 品管理、内容管理等能力,从而实现业务的可管理性与可运营 性 。 2。1 TVBS系统简介 本产品的工程实践项目“TVBS”是SeaChange公司针对国内 市场推出的数字电视解决方案,为客户提供多种方便、简捷媒体 服务功能的硬件和软件的架构。TVBSt ̄将媒体提供的广播节目 录制到存储服务器,提供给数字机顶盒和Pc客户端进行点播。 TVNOw系统可以主要实现以下三种功能: 2.1.1随心点播(Video—on—Demand,v0D) ・用户可以按照自己的意愿点播节目的交互式视频服务。 指导老师:王介之,同济大学软件学院副教授。 作者简介:庄子健(1983.7-),男,汉族,浙江宁波人,高级测 试工程师,工学学士、工学硕士(硕士研究生在读),研究方向: 软件测试。 1 78口圜目圆 见的视频点播应用。 2.1.2随心录像(Network Personal Video Recorder,NPVR) ・一种网络个人录像功能,能支持用户通过STB等途径对电 视上正在实时播出或未来将播出的节目进行录制,所录节目存 储在运营商的视频服务器中。 ・在一定的时间内,用户能对所录节目进行点播,并能进行 暂停、快退、快进及重新开始等播放控制。 ・当碰到自己喜爱的几套电视节目正在电视台不同频道的 同一时段播出时,通过打开NPVR界面,指定网络中心的核心存 储系统,把其中的一些节目录制下来,然后选择不同的时段收 看。 ・如要准备外出,只要提前向系统输入节目录制的指令,回 家后就能看到定制好的电视节目。 2.1.3实时节目点播(Pause TV) 一种能让用户在电视广播节目播送过程中,使用暂停,回 放键来定格电视画面和回放电视节目的点播功能。用户可以实 时观看当前播放的电视广播节目,并在观看节目时进行暂停、 回放等流控操作 2.2数字电视平台功能性需求分析 数字电视平台功能决定了系统软件所要执行的任务。TVBS 产品主要有以下功能模块:OTE接口模块,OSS接口模块¥1Nav接 口模块组成。 2.2.1 OTE接口模块 需求定义及分析:从机项盒客户端购买RVOD和促销中的产 品,OTE将会执行促销和优惠规则,然后对用户发布tickets,价 格和租赁期限的相关信息。 用户通过P0或优惠券购买节目和节目包,机项盒客户端提 交数据 ̄OOTE,OTE将会根据优惠规则计算价格,发布tickets或 优惠券给用户。 如果用户是通过P0购买产品的,需要product offering id;如果用户是通过优惠券购买产品的,需要coupon id。该操 作保证售出的产品可以播放并使用相应的促销或优惠券。 返回数据是一个优惠列表。OTE将会为每一个节目发布一 个ticket。如果用户购买一个节目包,第一个ticket将会是节目 包的价格,其它ticket的价格为0;如果用户购买的产品正在促 销买2送i,前两个ticket将会是两个节目的价格,第三个ticket 价格为0。测试方法是模拟STB发送http的请求,根据设置不 传播经纬・ 同的参数,来判断返回的XML中判断测试标准,测试环境要求: Windows 2003 Server,client网络连接正常且有自己的IP。 据sheet中,每种业务分类会按照相应的业务标示名存储为一 个Sheet。测试用例运行配置表是根据自动化测试执行人员选 的configuration element中进行配置,每一种测试类型会有 一测试点涉及:Device ID,Home ID,Product Offering 择需要执行的测试用例而设计的。测试用例运行配置在子线程 ID,Coupon ID,Local Entry ID,Entry Type。 测试方法:通过测试页面验证参数,在各类参数中输入相 应的数据要求。 个对应的配置存在于configuration element中。见运行配 配置 线程数量 循环次数 循环间隔时长 行的操作 是否使用调度器 是否必须 备注 是 线程数量 是 循环次数 是 循环间隔时长 置表结构 通过标准:检查返回数据中的参数,TranSaction ID, Product Type,Transaction Time,Ticket ID,Ticket Type,Buy From,Price,Purchase Time,Effective Time,Expiration Time,View Status 在取样错误后要执 是 否 在取样错误后要执行的操作 是否使用调度器 2.2.2 OSS接口模块 含有User Login,机顶盒下的用户登录;User Update password,更新已登录用户账号密码;Create User,创建新用 户;Add Favorite Item,该操作添加收藏夹节目 ̄ISMS。 门都有各自的测试点,测试方法和通过标准。 2.2.3 Nav接口模块 需求定义及分析:List Entry是将指定的导航过程中产生 的Entry以文件数据方式列出。Entry是一种抽象的数据,它可 以是PO,Space,View,Folder,节目包,节目或关联节目中的任意 一种数据。 2.3数字电视平台性能需求分析 2.3.1分析角度 按照成熟的性能测试策略,从前端、服务端、网络几个层 次来分析。(为以后的测试打下指标基础)前端:并发用户数; 服务端:系统处理能力和硬件选型等;网络端:网络流量和带 宽。从软件结构分析,找出可能瓶颈。系统将来是否能够满足性 能压力?从软件系统耗时功能分析。标准主体数据库维护平台: 元数据树的浏览,因为需要从多个表中构建多一个元数据,A市 的数据量很大,所以应该重点测试。数据库结构的创建,需要 在数据库中创建实例和结构,所以耗用时间长,需要测试。 2.3.2用户访问量 目的:知道最大的并发用户数。 用户数:调查了解和本项目相关的模块,OSS、OTE、Nav 或TianShan 4个模块。以每个模块访问的数量按500至1000 人计算,乘上4个模块,合计为4000人次。检查系统需要支持 1000 ̄4=4000人次的最大并发。 到目前为止,如果不在标准主题数据库上面增加别的应 用,整个WFES端需要支持4000最大并发数。 3数字电视平台自动化测试框架的设计与实现 3.i自动化测试框架的设计 一个自动化测试项目会有一个到多个测试场景 (Scenario),而每个测试场景又会有一个到多个测试用例(Test Case)。 自动化测试配置到每个测试用例上,每个Scenario便包含 了这些测试用例的载体,其本身不包含任何数据。 设计每个测试场景为一个Excel文件存在,Excel的文件 名IIII试场景名,每个测试场景的Excel文件中必须包含一张 BusinessFlow用以存储所有相应测试用例的业务流程关键 字,所有的测试数据会按照业务的分类,存储在相应的测试数 3.2自动化测试框架的实现 3.2.1数据准备模块实现方法 数据准备模块是整个自动化测试框架的执行入口,它需要 为整个执行过程完成一个良好的铺垫,所以执行模块不仅包括 了执行所有用例本身,还需要负责完成包括执行之前的一系列 动作。 3.2.2主线程组模块 测试脚本主线程组模块的主要方法包括:浏览节目,订录 并购买节目,点播节目。 由于需要针对数字电视应用后台进行测试,采用模拟机顶 盒的请求,包括基于SoapSHXML的http请求,和通过建立socket 发送RTSP命令的请求。 浏览的请求主要是http的请求,格式如下: h t t p://1 7 2.3 0.6 6.1 6 3:9 0 9 0//n e/ Stb Servlet?attribute=Stb1i St entrY?Parent一— HUID=QAgN3557 在这里parent HUID是个定值,作为检查点,需要指定判断 如下返回标准:(1)response code是2000K。(2)节目信息是正确 的。(3)节目状态也是正确的。 3.2.3性能测试的实现 根据软件系统耗时功能分卡斤,用户访问量和系统业务量的 混合业务分析,按照用户的实际使用人数比例来模拟各个模块的 组合并发情况。混合业务测试特点是根据用户使用系统的情况分 成不同的用户组进行并发,每组的用户比例要根据实际情况来匹 配,通常会取各个相关模块最大的并发用户数目进行组合。 按照性IIII试设计定义的每个模块100O人次访问并发量, 11500个线程,单位1秒内递增,共计循环2次。(1)通过新建一个 Test Plan,设置Thread Group。(2)设2个页面接受模拟访问, 如0SS和OTE页面。(3)添加几个关键 , ̄HAggregate Graph、 Graph Results、Summary Report、View Results in Table、 View Results Tree等。 [参考文献] [1]w{11iam E.Perry.软件测试的有效方法[M].清华大学出版社, 2o08:2O~20¨0页. [2]许永明.IPTV:技术与应用实践[M].电子工业出版社,2006:19 ̄28. [3]卢官明,宗叻.IPTV技术及应用[M].人民邮电出版社,2007:10 ̄245页. [4]崔启亮,胡一呜.国际化软件测试[M].电子工业出版社,2006:13 ̄27页. 

因篇幅问题不能全部显示,请点此查看更多更全内容

Top