数据仓库 - 测试

  • 简述

    测试对于数据仓库系统来说非常重要,可以使它们正确高效地工作。在数据仓库上执行三个基本级别的测试 -
    • 单元测试
    • 集成测试
    • 系统测试

    单元测试

    • 在单元测试中,每个组件都被单独测试。
    • 每个模块,即过程、程序、SQL 脚本、Unix shell 都经过测试。
    • 此测试由开发人员执行。

    集成测试

    • 在集成测试中,将应用程序的各个模块组合在一起,然后根据输入的数量进行测试。
    • 执行它是为了测试各个组件在集成后是否运行良好。

    系统测试

    • 在系统测试中,整个数据仓库应用程序被一起测试。
    • 系统测试的目的是检查整个系统是否一起正常工作。
    • 系统测试由测试团队进行。
    • 由于整个数据仓库的规模非常大,通常可以在制定测试计划之前执行最少的系统测试。
  • 测试时间表

    首先,测试计划是在制定测试计划的过程中创建的。在这个时间表中,我们预测了测试整个数据仓库系统所需的估计时间。
    有不同的方法可用于创建测试计划,但它们都不是完美的,因为数据仓库非常复杂和庞大。数据仓库系统也在本质上不断发展。在创建测试计划时可能会遇到以下问题 -
    • 一个简单的问题可能有大量的查询,可能需要一天或更长时间才能完成,即查询没有在所需的时间范围内完成。
    • 可能出现丢失磁盘等硬件故障,也可能出现意外删除表或覆盖大表等人为错误。
    Note− 由于上述困难,建议始终将通常允许的测试时间加倍。
  • 测试备份恢复

    测试备份恢复策略非常重要。以下是需要此测试的场景列表 -
    • 介质故障
    • 表空间或数据文件丢失或损坏
    • 重做日志文件丢失或损坏
    • 控制文件丢失或损坏
    • 实例失败
    • 归档文件丢失或损坏
    • 桌子丢失或损坏
    • 数据故障期间故障
  • 测试操作环境

    有很多方面需要测试。下面列出了这些方面。
    • 安全− 安全测试需要单独的安全文件。本文档包含一系列不允许的操作并为每个操作设计测试。
    • 调度− 需要调度软件来控制数据仓库的日常操作。它需要在系统测试时进行测试。调度软件需要与数据仓库的接口,这将需要调度程序来控制夜间处理和聚合管理。
    • 磁盘配置− 还需要测试磁盘配置以确定 I/O 瓶颈。应使用不同的设置多次执行测试。
    • 管理工具− 系统测试时需要测试所有的管理工具。这是需要测试的工具列表。
      • 事件管理器
      • 系统管理员
      • 数据库管理员
      • 配置管理器
      • 备份恢复管理器
  • 测试数据库

    数据库通过以下三种方式进行测试 -
    • 测试数据库管理器和监控工具− 测试数据库管理器和监控工具,用于测试数据库的创建、运行和管理。
    • 测试数据库功能− 这是我们必须测试的功能列表 −
      • 并行查询
      • 并行创建索引
      • 数据并行加载
    • 测试数据库性能− 查询执行在数据仓库性能测量中起着非常重要的作用。有一些固定查询需要定期运行,并且应该对其进行测试。要测试临时查询,应该仔细阅读用户需求文档并完全了解业务。花时间测试业务可能针对不同索引和聚合策略提出的最棘手的查询。
  • 测试应用程序

    • 所有管理器都应该正确集成并工作,以确保端到端加载、索引、聚合和查询按预期工作。
    • 每个经理的每个功能都应该正常工作
    • 还需要在一段时间内测试应用程序。
    • 还应测试周末和月末任务。
  • 测试逻辑

    系统测试的目的是测试以下所有领域 -
    • 调度软件
    • 日常操作流程
    • 备份恢复策略
    • 管理和调度工具
    • 隔夜处理
    • 查询性能
    注意− 最重要的一点是测试可扩展性。如果不这样做,就会给我们留下一个系统设计,当系统增长时它就不起作用了。