《BI项目测试方法》PPT课件.ppt

上传人:sh****n 文档编号:8631920 上传时间:2020-03-30 格式:PPT 页数:32 大小:1.64MB
返回 下载 相关 举报
《BI项目测试方法》PPT课件.ppt_第1页
第1页 / 共32页
《BI项目测试方法》PPT课件.ppt_第2页
第2页 / 共32页
《BI项目测试方法》PPT课件.ppt_第3页
第3页 / 共32页
点击查看更多>>
资源描述
BI测试基础 测试交付部向长喜 目录 BI概述BI的体系架构BI的发展历程BI的发展趋势主流BI厂商及产品BI测试范围BI测试方法BI测试工具 BI概述 BI定义BI是BusinessIntelligence简称 中文释为商业智能 又称商务智能 通常理解为将企业中现有的数据转化为知识 帮助企业做出明智的业务经营决策的工具 商业智能的概念于是1996年由加特纳集团 GartnerGroup 最早提出 商业智能描述了一系列的概念和方法 通过应用基于事实的支持系统来辅助商业决策的制定 商业智能技术提供企业迅速分析数据的技术和方法 包括收集 管理和分析数据 将这些数据转化为有用的信息 然后分发到企业各处 目前 学术界对商业智能的定义并不统一 BI的体系架构 BI的发展历程 BI的发展趋势 功能上具有可配置性 灵活性 可变化性从单独的商业智能向嵌入式商业智能发展从传统功能向增强型功能转变加强了绩效管理功能产品模块的集成加强处理结构化和非结构化数据的能力加强了预测分析功能 主流BI厂商及产品 主流BI厂商及产品 主流BI厂商及产品 BI测试范围 BI测试范围数据源 数据仓库 增量 全量数据加载测试 数据仓库 数据集市 基础层脚本测试 应用脚本测试 任务 作业调度测试 数据集市 前端展现 前端展现测试 业务验证测试 BI测试范围 数据仓库测试 以HOLAP数据仓库测试为例 后台数据库的测试结构测试 分为3部分 1 测试表是否存在 使用测试用例 TestCase 如下SQL所示 如果运行结果返回0 则说明目的表不存在与当前后台数据库中 如果返回值为1 则表明目的表存在于当前后台数据库中 SelectCount 1 fromdbo sysobjectswhereid object id N 表名 andobjectproperty id N IsuserTable 12 测试表是否完整正确 BI测试范围 2 测试表是否完整正确 表的完整性测试主要是指表的结构必须和ER图相一致 在这个测试部分必须测试以下几个部分 首先 需要验证目的表的字段是否和ER图相同 目的表不能增加也不能丢失任何字段 其次 需要对每一个字段的数据类型进行验证 如INT不能是BIGINT类型 或者CHAR不能是VARCHAR类型 再次 对每一个数据类型的长度进行验证 数据类型长度太长会降低系统的性能 而数据类型太短则会影响数据的精度 最后 必须对每一个字段的约束进行验证 如该字段是否允许为空 是否是能自增长等 在SQL2000系统中 可以使用 SP HELP表名 得到测试表的结构信息 BI测试范围 3 测试表的主外键是否正确 众所周知 表的主键是定义了表的记录完整性 而外键则表明了参照完整性 因而表的主外键在表中是非常重要的 所以必须单独从其它测试部分分离出来 作为一个独立的测试模块进行验证 同样 在SQL2000系统中 可以使用 SP HELP表名 得到测试表的主键和外键的信息 关系测试数据仓库中各种表之间存在这一种关系 这种关系即是人们早已熟知的 参照完整性 参照完整性 测试是数据仓库测试的一个重要模块 参照完整性 也称为 引用完整性 在本文中统一称为参照完整性 参照完整性指添加 修改或删除记录时 表间的关联性不可破坏 在SQLServer中 参照完整性基于主键与外键或唯一键 Unique 与外键的关系 参照完整性确保在各个关联的表中的值是一致的 1 对于数据仓库 存在着事实表 FactTable 和维度表 DimensionTable 如果删除维度表中的某条记录 那么对应的事实表也必须删除相关记录 如果事实表插入新的记录 那么维度表也必须插入相关的记录 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个测试用例来验证上图中数据仓库的星型模型中事实表和维度表的参照完整性 Selectcount 1 from事实表nolockwhereA IDnotin selectA IDfrom维度表Anolock Selectcount 1 from事实表nolockwhereB IDnotin selectB IDfrom维度表Bnolock Selectcount 1 from事实表nolockwhereC IDnotin selectC IDfrom维度表Cnolock Selectcount 1 from事实表nolockwhereD IDnotin selectA IDfrom维度表Dnolock Selectcount 1 from事实表nolockwhereE IDnotin selectA IDfrom维度表Enolock 如果以上5个测试用例返回不等于0的值 则说明不满足参考完整性 前端立方体 Cube 必定会刷新失败 BI测试范围 数据测试数据仓库的核心是大量的数据 数据在进入数据仓库之前必须对数据进行预处理 包括抽取 转换和加载 ETL 测试人员必须测试这些数据是否准确 精度是否丢失 是否符合需求说明 如下图中一个简单的数据转换和传输例子 数据源的数据必须经过稍微的变换后加载到目的表中 数据源的字段A和关联表关联后得到字段A1加载到目的表中 其他数据源字段B C D和Value1 Value2 Value3直接加载到目的表的B C D和Value1 Value2 Value3 BI测试范围 可以用如下几个测试用例来验证上图中数据仓库的数据传输后的数据准确性 Selectcount 1 from数据源innerjoin关联表on数据源 A 关联表 AInnerjoin目的表on关联表 A1 目的表A1And数据源 B 目的表 BAnd数据源 C 目的表 CWhere数据源 Value1目的表 Value1Selectcount 1 from数据源innerjoin关联表on数据源 A 关联表 AInnerjoin目的表on关联表 A1 目的表A1And数据源 B 目的表 BAnd数据源 C 目的表 CWhere数据源 Value2目的表 Value2Selectcount 1 from数据源innerjoin关联表on数据源 A 关联表 AInnerjoin目的表on关联表 A1 目的表A1And数据源 B 目的表 BAnd数据源 C 目的表 CWhere数据源 Value3目的表 Value3Selectcount 1 from数据源innerjoin关联表on数据源 A 关联表 AInnerjoin目的表on关联表 A1 目的表A1And数据源 B 目的表 BAnd数据源 C 目的表 CWhere数据源 Value4目的表 Value4或者可以用一个SQL语句实现如上所有的功能 Selectcount 1 from数据源innerjoin关联表on数据源 A 关联表 AInnerjoin目的表on关联表 A1 目的表A1And数据源 B 目的表 BAnd数据源 C 目的表 CWhere数据源 Value1目的表 Value1Or数据源 Value2目的表 Value2Or数据源 Value3目的表 Value3Or数据源 Value4目的表 Value4对于精度误差问题 可以用 ABS 数据源 Value 目的表 Value 目的表 Value 如果以上测试用例返回不等于0的值 则说明数据传输和转换失败或错误 BI测试范围 数据仓库测试 以HOLAP数据仓库测试为例 前台立方体的测试维度测试1 维度结构测试 BI测试范围 以地理维度为例子 见图2 1 该维度有3个级别 分别是BigAreaName RegionName和CountryMediumName 因此 对结构的测试分为2个小部分 按照需求说明书验证该维度是否是3个级别 在验证每个级别是否和需求一致 必须验证有无拼写错误 2 维度数据测试 BI测试范围 对于每一个级别 必须要验证数据的准确性 所以 对于BigAreaName 必须在后台数据库中运行如下SQL语句 Selectdistinct BigAreaName fromGeographyDimnolock把得到的结果和如下图2 2 1维度值展示红色部分的结果进行比较 如果一致则说明BigAreaName没有错误 接下来进行RegionName的测试 必须在后台数据库中运行如下SQL语句 BI测试范围 Selectdistinct RegionName fromGeographyDimnolockwhere BigAreaName N America 把得到的结果和如下图2 2 1维度值展示绿色部分的结果进行比较 如果一致则说明RegionName没有错误 最后进行CountryMediumName的测试 必须在后台数据库中运行如下SQL语句 Selectdistinct CountryMediumName fromGeographyDimnolockwhere BigAreaName N America AndRegionName Canada 把得到的结果和如下图2 2 1维度值展示蓝色部分的结果进行比较 如果一致则说明RegionName没有错误 3 级别间关系测试 BI测试范围 众所周知 数据仓库一般会有很多个数据源 因此常常会遇到这样一个问题 某个国家在A系统属于亚洲部分 在B系统属于欧洲部分 但在数据仓库中是不允许出现这样的数据 数据必须保持一致 不能出现一个孩子拥有多个父亲的现象出现 否则会导致该该数据仓库中地理维度的分类错误 当然可以使用如下SQL语句进行每一个级别间的关系验证 Select国家from Select国家 区域fromGeographyDimnolockGroupby国家 区域 AGroupby国家Havingcount 1 1如果上面的SQL返回任何国家 则说明这些国家属于多个区域 意味这数据有问题 BI测试范围 数据仓库测试 以HOLAP数据仓库测试为例 前台立方体的测试立方体度量测试1 立方体度量结构测试 BI测试范围 结构测试包括度量的个数 数据类型 货币 字符 整型 精度 显示的格式 所在文件的路径都必须符合需求说明书的定义 在图2 2度量展示中 按照需求说明书的定义 度量SellInSalesUnit的路径必须是SellInSalesFact SellInSales 数据显示格式为 数据类型为整型 2 立方体度量值测试 BI测试范围 对度量值的测试必须紧密的结合每一个维度 如上图2 2 2度量值和维度结合展示数据所示 度量值SellInSalesUnit结合了时间维度 红色区域 地理维度 蓝色区域 和产品维度 绿色区域 进行数据的显示 可以使用下面SQL模板实现数据的验证 来检验前台立方体的数据是否准确 Selectby BigAreaName ProductName sum SellInSalesUnit SellInSalesUnit from销售事实表AInnerjoin时间维度表BonA DateId B DateIDInnerjoin产品维度表ConA ProductID C ProductIDInnerjoin地理维度表DonA GeoGraphyID D GeoGraphyIDWhereFiscalYear 2008 Groupby BigAreaName ProductName BI测试范围 BI测试策略 BI测试策略模型建表语句或导数语句测试验证与前一版本的差异新旧模型字段的差异性模型与脚本的相互验证验证导数语句是否正确ETL脚本测试源表目标表数据量核对拉链表拉链逻辑检查标准代码转换总分关系延续性 BI测试策略 BI测试策略任务 作业调度测试废弃任务是否被删除调度作业是否符合设计调度是否重复配置依赖是否覆盖完全数据口径验证规范口径规则说明书第三数据比对业务主导双路比对新旧系统对比 BI测试方法 BI测试方法黑盒测试以脚本跑通出数为重 检查脚本内出现较为严重手工编码错误白盒测试主要检查脚本ETL程序代码 包括表表关联检查 特列字段计算公式检查 casewhen条件语句是否正确指标测试检查数据加载完后目标表的各项技术指标是否正确 包括PI值检查 空值检查 规范性检查等性能测试数据容量测试 数据时间窗口期测试 数据处理的连续性和持续性 BI测试工具 BI测试工具黑盒测试场景测试脚本白盒测试开发 生产环境指标测试测试脚本性能测试LoadRunner ThankYou
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!