如何使用google cloud bigquery进行集成测试

时间:2018-03-17 12:28:35

标签: java continuous-integration google-bigquery integration-testing

我们正处理从apache hbase迁移到bigquery的过程。

目前我们有端到端测试(使用黄瓜),这些测试与运行hbase的docker容器一起使用。

似乎没有任何大型的docker容器或模拟器(https://cloud.google.com/sdk/gcloud/reference/beta/emulators/

我们如何能够为使用bigquery的应用程序创建端到端测试?

2 个答案:

答案 0 :(得分:2)

目前没有任何类型的BigQuery本地模拟器或类似的东西。正如您分享的关于available GCP emulators的链接所指出的,还有一些其他产品具有这样的功能,但可能之所以BigQuery没有这样的产品,其真正的潜力只有在其真正的基础设施中工作时才能看到,以及使用BigQuery的成本相对较低的事实,取决于你使用它的用途,加上你有一个免费的层来开始使用。

让我总结一些可能对您有用的BigQuery定价信息:

在任何情况下,如果您仍然认为直接使用BigQuery不是最适合您的选项,可以通过在Public Issue Tracker for BigQuery中创建功能请求来将您的请求转发给工程团队,尽管它工程团队是否(以及何时)决定是否(以及何时)实现此类功能,更考虑BigQuery的复杂性以及其性能是否优化以适应当前架构。

答案 1 :(得分:2)

这是一篇旧帖子,但如果您可以使用 Python 并计划测试您的 SQL 并根据输入断言您的结果,我建议您使用 bq-test-kit。此框架允许您在 Python 中与 BigQuery 交互并使测试可靠。

您有 3 种方法可以将数据注入其中:

  • 创建具有独立名称的数据集和表,从而拥有自己的命名空间
  • 依赖临时表,其中数据插入数据文字
  • 数据文字合并到您的查询中

希望这会有所帮助。