【问题标题】:Best Practices for Testing Application Dashboard Data测试应用程序仪表板数据的最佳实践
【发布时间】:2013-09-24 12:23:25
【问题描述】:

我们有一个仪表板,其中包含基于 6 个月报告期的指标。用户登录并查看基于当前 6 个月报告期的指标。

每 6 个月,我们会在 DEV/QA 环境中加载新指标,并为即将到来的报告期配置它们,以便我们进行测试。但是,我们的应用程序和 ETL 使用 GETDATE(),所以为了让 ETL 能够正确计算,我们已经在未来设置了服务器的 DATE,所以一切都会计算并显示为如果我们在未来。

我们的 DBA 小组现在告诉我们,不应该这样做,也不应该这样做 业内的另一家公司就是这样做的。谁能给我一些例子 在这种情况下他们为测试做了什么?我们应该是 希望重新设计我们的 ETL 和应用程序,有什么想法 最佳做法?

我们对应用程序进行了单元测试,因此它可以工作。 我们更担心 ETL 的数据在新周期的第 1 天会不正确。在第 1 天,指标显示正确且数据正确非常重要。


我不太确定这是否属于 SO 或其他论坛,如果不属于,请见谅。

【问题讨论】:

  • 我发现这个链接也谈到了测试过程并且很有趣:programmers.stackexchange.com/questions/115421/…
  • 我认为您的问题非常适合 SO,但它的标题具有误导性。您的问题的核心是 GetDate() 难以为测试目的操作。您绝对应该将其纳入主题。询问“最佳实践”可能很容易以“基于意见”的方式结束问题,这只是少数没有仔细阅读文本的人的问题;)
  • 顺便说一句,最明显的答案是“不要使用 GetDate,将日期作为参数传递”,但这在从头开始编写代码时很容易,而不是在一切都已经完成时......就像smalliron.wordpress.com/2007/03/13/… .我真的很期待任何 GetDate 测试解决方法,但恐怕没有。
  • 仅供参考:stackoverflow.com/questions/2593047/… - 所以你的问题实际上可能是它的重复,请考虑一下。

标签: testing reporting etl business-intelligence dashboard


【解决方案1】:

假设如下:

  • P-1 = 前 6 个月期间
  • P = 当前的 6 个月期间
  • P+1 = 未来 6 个月

如果我理解问题所在,您的 QA 环境中的数据总是在 P 期间收集,这就是为什么您需要在 P+1 上运行测试(迫使您将服务器的日期设置为将来)。

我们在 DEV/QA 环境中加载新指标并配置它们以用于 即将到来的报告期,以便我们进行测试

当您配置它们 [指标] 为即将到来的报告期,您还可以准备/转换测试数据,使其看起来像是收集的在 P-1 上。类似于“将每个时间戳向后移动 6 个月)。然后我知道你会有 P-1 数据,可以在 P 上进行测试。

【讨论】:

    【解决方案2】:

    我们必须在 1990 年代后期为 Y2K 测试预先指定日期,所以是的,它已经完成了。我可能会建议你制作一个 %getData 宏。然后,您可以在一处设置日期。一旦测试完成,就可以调用 getData() 进行正常处理。前期需要进行一些重组,但随后将允许仅在 %getData 宏中进行维护。只是一个想法。

    【讨论】:

      猜你喜欢
      • 2013-06-23
      • 2010-10-12
      • 2011-06-28
      • 2021-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多