NGB中间件api接口测试用例设计与实现_电视技术_2014.2(1405061859279)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

*1

NGB终端中间件API接口测试用例的设计与实现

张定京,赵良福,付光涛,李小雨,王颖

(国家广播电影电视总局广播科学研究院,北京 100866)

摘要:根据NGB终端中间件标准有关Java API和JS API的接口定义和要求,以及NGB的业务需求,制定了API接口测试用

例的设计原则和设计方案,方案包括自动化和手动两种方式,两类测试相互补充。本文通过以频道搜索和媒体处理两个典型

测试单元为例,介绍了这两类测试用例的软件设计流程和具体实现方法。该方案设计已经过验证,并应用于NGB中间件的

标准符合性测试中。

关键词:下一代广播电视网;中间件;API;测试用例

【中图分类号】TN949.6 【文献标识码】B

Design and Implementation of API Test cases for Middleware of NGB receiver ZHANG Ding-jing,ZHAO Liang-fu,FU Guang-tao,LI Xiao-yu,WANG Ying (Academy of Broadcasting Science State Administration of Radio,Film & Television,Beijing 100866,China)Abstract: According to Java API and JS API interface definitions and requirements of NGB receiver middleware specification, as well as NGB business needs, design principles and schemas for API interface test cases are developed, including automated and manual modes, the two types could complement each other. In this paper, the two types of software design processes and implementation methods for test cases are described by two typical testing units-channel scanning and media processing. The design has been validated and applied to NGB middleware standards compliance testing.

Key words:Next Generation Broadcasting; middleware; API; test case

1引言

下一代广播电视网(简称NGB)终端中间件是运行在数字电视接收终端中的软件,按功能层次划分

处于接收终端资源层之上、应用层之下;其向下屏蔽了资源层的差异,向上为应用的开发提供一套完整、

统一的应用编程接口(简称API);中间件与资源层协同工作,能承载和支撑各种不同的应用。NGB数字

电视接收终端采用中间件可以提升应用的互操作性,即同一款终端能够运行不同应用提供商开发的应用,

同一个应用能够运行在不同的终端之上[1]。因此,NGB中间件技术对推动NGB和三网融合的整体发展,

加快广电新业态的业务生成和部署,以及跨域业务的互联互通,具有十分重要的意义[2]。

国家广播电影电视总局于2012年10月发布了NGB终端中间件技术规范,标准号为GY/T 267—2012[1]。目前遵循该规范的NGB终端机顶盒已进入研发和生产阶段,接下来产品的测试和认证工作就显得尤为迫切和重要,因此判定产品是否符合中间件技术要求将是亟待解决的问题。

GY/T 267—2012[1]标准对NGB终端中间件的软件架构、协议栈、内容格式、应用信令、应用传输、应用支撑、安全机制、应用编程接口等各个方面的技术要求进行了规定。其中应有编程接口是该标准的核心内容,检验终端产品是否符合中间件标准要求基本可通过对应有编程接口的全方位测试来加以验证。本文将简述中间件API接口要求,描述API接口的测试方法和测试方案,以典型测试单元为例,介绍测试用例的设计和实现方法。

2中间件API

NGB终端中间件软件架构示意见图1。

1国家科技支撑计划项目课题No.2012BAH02B01经费资助

应用层

(NGB-J\NGB-H )

功能组件层

执行环境层

应用框架层

资源层

图1 NGB 终端中间件软件架构示意

图1中的应用编程接口,即中间件提供给应用的接口。NGB 终端中间件所能支撑的应用,按应用开发技术类型可分为NGB-J 和NGB-H 应用:

——NGB-J 应用是指采用Java 编程语言开发的应用的统称;

——NGB-H 应用是指采用HTML 、JavaScript 、CSS 等Web 技术开发的应用的统称[1]

GY/T 267—2012[1]标准针对NGB-J 应用和NGB-H 应用分别定义了Java API 和JS (JavaScript )API 两套接口。 2.1 Java API

NGB 终端中间件应为NGB-J 应用开发提供三类Java 接口,即Java 基础接口、DA VIC 扩展接口和NGB 扩展接口[1]。

Java 基础接口由SUN 公司制定,是开发NGB-J 应用的必要支撑。NGB 终端中间件应支持CDC1.1.2(JSR

218)/FP 1.1.2(JSR 219)/PBP1.1.2(JSR 217)和MIDP2.0(JSR 118) Java 基础接口[1]

NGB 扩展接口由中间件标准定义,针对NGB 应用需求扩展制定。NGB 终端中间件应实现的扩展Java 接口功能单元包括:单向广播网络接入单元、广播协议处理单元、媒体处理单元、应用引擎单元——频

道搜索、应用引擎单元——业务选择等[1]

DA VIC 扩展接口由数字音频视频委员会针对数字电视应用而制定。NGB 终端中间件应支持的DA VIC

1.4.1p9定义的部分接口,主要包括MPEG/DVB 传输流、表格数据装载等处理的相关类和方法[3]

。 2.2 JS API

NGB 终端中间件应为NGB-H 应用提供两类JS 对象,即基础JS 对象和NGB 扩展JS 对象[1]

。 基础JS 对象由W3C 组织定义,是开发NGB-H 应用的基础。NGB-H 应用应支持的基础JS 对象遵循W3C

JS 1.5规范[1]

NGB 扩展JS 对象由中间件标准定义,针对NGB 应用需求扩展制定[1]

。NGB-H 应用应支持的扩展JS 对象功能单元与Java 接口基本相同。

3 测试方案设计

3.1 设计原则

NGB 中间件API 数量庞大,涉及业务逻辑繁多复杂,如果想完全模拟这些业务逻辑,需要设计一套基于白盒测试的模拟测试环境,通过调用API 对业务逻辑的触发来验证API 功能的完整性和稳定性。

白盒测试又称为结构测试或逻辑驱动测试,主要是对程序模块进行如下检查:

相关文档
最新文档