《BI项目测试方法》PPT课件.ppt_第1页
《BI项目测试方法》PPT课件.ppt_第2页
《BI项目测试方法》PPT课件.ppt_第3页
《BI项目测试方法》PPT课件.ppt_第4页
《BI项目测试方法》PPT课件.ppt_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

BIBI测试基础测试基础 测试交付部 向长喜 赛意信息科技有限公司 目录 vBI概述 vBI的体系架构 vBI的发展历程 vBI的发展趋势 v主流BI厂商及产品 vBI测试范围 vBI测试方法 vBI测试工具 赛意信息科技有限公司 BI概述 vBI定义 BI是Business Intelligence简称,中文释为商业 智能,又称商务智能。通常理解为将企业中现有的 数据转化为知识,帮助企业做出明智的业务经营决 策的工具。商业智能的概念于是1996年由加特纳 集团(Gartner Group)最早提出:“商业智能 描述了一系列的概念和方法,通过应用基于事实的 支持系统来辅助商业决策的制定。商业智能技术提 供企业迅速分析数据的技术和方法,包括收集、管 理和分析数据,将这些数据转化为有用的信息,然 后分发到企业各处。” 目前,学术界对商业智能的定义并不统一。 赛意信息科技有限公司 BI的体系架构 赛意信息科技有限公司 BI的发展历程 赛意信息科技有限公司 BI的发展趋势 v功能上具有可配置性、灵活性、可变化性 v从单独的商业智能向嵌入式商业智能发展 v从传统功能向增强型功能转变 v加强了绩效管理功能 v产品模块的集成 v加强处理结构化和非结构化数据的能力 v加强了预测分析功能 赛意信息科技有限公司 主流BI厂商及产品 国际BI厂商 国内BI厂商 赛意信息科技有限公司 主流BI厂商及产品 日 期事 件备 注 2003年 Cognos公司并购软件公司AdaytumAdaytum是一家商业软件的开发厂商 Business Objects公司(简称BO)收购 Crystal Decisions 使BO在企业报表领域的功能加强 Hyperion(海博龙)收购Brio使Hyperion 的BI工具更多的覆盖在业务部门 Actuate收购Nimble TechnologiesNimble Technologies是一家资料整合公司 Ascential收购Mercator两家公司都属于交易处理软件开发领域的厂商 2004年Cognos收购Frango填补了Cognos在财务合并方面的空白 2005年IBM收购SRD完善了IBM的BI中间件产品 IBM收购Ascential Software公司加强IBM的信息整合、组织及管理的能力 Business Objects收购SRC软件公司使BO进入预算领域 2006年 Business Objects 公司收购 Firstlogic使BO可提供完整的EIM解决方案 微软收购ProClarity使微软进入商业智能市场 赛意信息科技有限公司 主流BI厂商及产品 赛意信息科技有限公司 BI测试范围 vBI测试范围 数据源数据仓库:增量、全量数据加载测试 ; 数据仓库数据集市:基础层脚本测试、应用 脚本测试、任务/作业调度测试; 数据集市前端展现:前端展现测试、业务验 证测试。 赛意信息科技有限公司 BI测试范围 v数据仓库测试(以HOLAP数据仓库测试为例) 后台数据库的测试 结构测试(分为3部分) 1、测试表是否存在:使用测试用 例(Test Case)如下 SQL所示: 如果运行结果返回0,则说明目的表不存在与当 前后 台数据库中,如果返回值为1,则表明目的表存在于 当前后台数据库中。 Select Count(1) from dbo.sysobjects where id = object_id(N表名 ) and objectproperty(id, NIsuserTable) =1 2、测试表是否完整正确: 赛意信息科技有限公司 BI测试范围 2、测试表是否完整正确: 表的完整性测试主要是指表的结构必须和ER 图相一致,在 这个测试部分必须测试 以下几个部分: 首先,需要验 证目的表的字段是否和ER图相同,目的表不能增加也不 能丢失任何 字段; 其次,需要对每一个字段的数据类 型进行验证,如INT不能是BIGINT类型,或者 CHAR 不能是VARCHAR类型;再次,对每一个数据类型的长 度进行验证,数据类型 长度太长会降低系统的性能,而 数据类型太短则会影响数据的精度。最后,必须对每一 个字段的约束进行验证,如该字段是否允许为空,是否 是能自增 长等。 在SQL2000系统中,可以使用“SP_HELP 表名”得到测试 表的结构信息。 赛意信息科技有限公司 BI测试范围 3、测试表的主外键是否正确: 众所周知,表的主键是定义了表的记录完整性,而外键则表明了参照完整 性,因而 表的主外键在表中是非常重要的,所以必须单独从其它测试 部分分离出来,作为一 个独立的测试模块进行验证。 同样,在SQL2000系统中,可以使用“SP_HELP 表名”得到测试表的主 键和外键的 信息。 关系测试 数据仓库中各种表之间存在这一种关系。这种关系即是人们早 已熟知的“参照完整性”。“参照完整性”测试是数据仓库测 试的一个重要模块。“参照完整性”也称为“引用完整性”( 在本文中统一称为参照完整性),参照完整性指添加,修改或 删除记录时,表间的关联性不可破坏。在SQL Server中,参照 完整性基于主键与外键或唯一键(Unique)与外键的关系。参 照完整性确保在各个关联的表中的值是一致的【1】。 对于 数据仓库,存在着事实表(Fact Table)和维度表( Dimension Table),如果删除维度表中的某条记录,那么对 应的事实表也必须删除相关记录, 如果事实表插入新的记录, 那么维度表也必须插入相关的记录。 赛意信息科技有限公司 BI测试范围 如下图所示,有一个事实表和五个维度表(维度 表A,维度表B,维度表C,维度表D,维度表E) ,这六个表通过主外键关系相关联。事实表和维 度表A通过A_ID建立参照完整性的关系;同样, 事实表和维度表B通过B_ID建立参照完整性的关 系;事实表和维度表C通过C_ID建立参照完整性 的关系;事实表和维度表D通过D_ID建立参照完 整性的关系;事实表和维度表E通过E_ID建立参照 完整性的关系。因此,作为测试人员必须至少写5 个测试用例来测试这个参照完整性。 赛意信息科技有限公司 BI测试范围 赛意信息科技有限公司 BI测试范围 可以用如下5个测试测试 用例来验证验证 上图图中数据仓库仓库 的星型模型中 事实实表和维维度表的参照完整性: Select count (1) from 事实实表 nolock where A_ID not in (select A_ID from 维维度表 A nolock) Select count (1) from 事实实表 nolock where B_ID not in (select B_ID from 维维度表 B nolock) Select count (1) from 事实实表 nolock where C_ID not in (select C_ID from 维维度表 C nolock) Select count (1) from 事实实表 nolock where D_ID not in (select A_ID from 维维度表 D nolock) Select count (1) from 事实实表 nolock where E_ID not in (select A_ID from 维维度表 E nolock) 如果以上5个测试测试 用例返回不等于0的值值,则说则说 明不满满足参考完 整性,前端立方体(Cube)必定会刷新失败败。 赛意信息科技有限公司 BI测试范围 数据测试 数据仓库仓库 的核心是大量的数据,数据在进进入数据仓库仓库 之前 必须对须对 数据进进行预处预处 理,包括抽取,转换转换 和加载载(ETL )。测试测试 人员员必须测试这须测试这 些数据是否准确,精度是否丢丢 失,是否符合需求说说明。如下图图中一个简单简单 的数据转换转换 和传输传输 例子,数据源的数据必须经过须经过 稍微的变换变换 后加载载 到目的表中。数据源的字段A和关联联表关联联后得到字段A1 加载载到目的表中,其他数据源字段B,C ,D和Value1, Value2,Value3直接加载载到目的表的B,C ,D和Value1 ,Value2,Value3。 赛意信息科技有限公司 BI测试范围 可以用如下几个测试用例来验证上图中数据仓库的数据传输后的数据准确性: Select count(1) from 数据源 inner join 关联表 on数据源 .A =关联表.A Inner join 目 的表 on关联表.A1 =目的表A1 And 数据源.B=目的表.B And 数据源.C =目的表 .C Where 数据源.Value1 目的表.Value2 Select count(1) from 数据源 inner join 关联表 on数据源 .A =关联表.A Inner join 目 的表 on关联表.A1 =目的表A1 And 数据源.B=目的表.B And 数据源.C =目的表 .C Where 数据源.Value3 目的表.Value4 或者可以用一个SQL语句实现如上所有的功能: Select count(1) from 数据源 inner join 关联表 on数据源 .A =关联表.A Inner join 目 的表 on关联表.A1 =目的表A1 And 数据源.B=目的表.B And 数据源.C =目的表 .C Where 数据源.Value1 目的表 .Value2 Or数据源.Value3 目的表.Value4 对于精度误差问题,可以用“ ABS(数据源.Value -目的表.Value) 目的表.Value” 如果以上测试用例返回不等于0的值,则说明数据传输和转换失败或错误。 赛意信息科技有限公司 BI测试范围 v数据仓库测试(以HOLAP数据仓库测试为例) 前台立方体的测试 维度测试 1、维度结构测试 赛意信息科技有限公司 BI测试范围 以地理维度为例子,见图2.1,该维度有3个级别,分别是 Big Area Name,Region Name和 Country Medium Name。因此,对结构的测试分为2 个小部分: 按照需求说明书验证该维度是否是3个级别,在验证每个级 别是否和需求一致。 必须验证有无拼写错误。 2、维度数据测试 赛意信息科技有限公司 BI测试范围 对于每一个级别,必须要验证数据的准确性,所以,对于 Big Area Name,必须在 后台数据库中运行如下SQL语 句: Select distinct Big Area Name from GeographyDi m nolock 把得到的结果和如下图2.2.1维度值展示红色部分的结果进 行比较,如果一致则说 明Big Area Name没有错误。 接下来进行Region Name的测试,必须在后台数据库中运 行如下SQL语句: 赛意信息科技有限公司 BI测试范围 Select distinct Region Name from GeographyDim nolock where Big Area Name = N.America 把得到的结果和如下图2.2.1维度值展示绿色部分的结果进 行比较,如果一致则说 明Region Name没有错误。 最后进行Country Medium Name的测试,必须在后台数 据库中运行如下SQL语句: Select distinct Country Medium Name from Geogr aphyDim nolock where Big Area Name = N.A merica And Region Name = Canada 把得到的结果和如下图2.2.1维度值展示蓝色部分的结果进 行比较,如果一致则说 明Region Name没有错误。 3、级别间关系测试 赛意信息科技有限公司 BI测试范围 众所周知,数据仓库一般会有很多个数据源,因此常常会遇 到这样一个问题,某个 国家在A系统属于亚洲部分,在B 系统属于欧洲部分,但在数据仓库中是不允许 出现这样的 数据,数据必须保持一致,不能出现一个孩子拥有多个父 亲的现象出现, 否则会导致该该数据仓库中地理维度的分 类错误。当然可以使用如下SQL语句进 行每一个级别间的 关系验证。 Select 国家 from( Select 国家,区域 from GeographyDim nolock Group by国家,区域 ) A Group by国家 Having count(1) 1 如果上面的SQL返回任何国家,则说明这些国家属于多个区 域,意味这数据有问题。 赛意信息科技有限公司 BI测试范围 v数据仓库测试(以HOLAP数据仓库测试为例) 前台立方体的测试 立方体度量测试 1、立方体度量结构测试 赛意信息科技有限公司 BI测试范围 结构测试包括度量的个数,数据类型(货币,字符,整型, 精度),显示的格式,所在文件的路径都必须符合需求说 明书的定义。 在图2.2 度量展示中,按照需求说明书的定义,度量 Sell In Sales Unit 的路径必须是 Sell In Sales FactSell In Sales。数据显示格式为#,#, 数据类型为整型。 2、立方体度量值测试 赛意信息科技有限公司 BI测试范围 对度量值的测试必须紧密的结合每一个维度。 如上图2.2.2度量值和维度结合展示数据 所示,度量值 Sell In Sales Unit结合了时间维度(红色区域),地理维 度(蓝色区域)和产品维度(绿色区域)进行数据的显示 。可以使用下面SQL模板实现数据的验证,来检验前台立 方体的数据是否准确。 Select by Big Area Name,ProductName, sum(Sell In Sales Unit) Sell In Sales Unitfrom 销售事实表 A Inner join 时间维度表 B on A.DateId = B.DateID Inner join 产品维度表 C on A.ProductID = C. ProductID I

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论