哪种测试数据库包的最佳方法?

时间:2015-03-30 09:23:06

标签: automated-tests database-testing

我目前正在开发一个需要测试数据库包和函数的项目。 我们需要向数据库包提供输入参数并测试包返回期望值,我们还要测试请求的响应时间。

请提供建议,如果有任何工具可用于执行此操作,或者我们可以在Junit或其他框架中编写测试用例。 哪一个最好的方法?

2 个答案:

答案 0 :(得分:0)

当我不得不进行DWH测试时,我使用了更原生的方法。我已经围绕已经存在的Dev数据集成框架安排了测试框架。所以我有很多可重用的工作,配置和代码。但是像你建议的那样使用OOP

  

在Junit编写我们的测试用例

也是一种方式。但请记住,DWH设计通常非常复杂(需要考虑很多方面),并且与持久层的交互并不总是测试策略的最佳候选者。更面向数据库的解决方案(如tSQLt)提供了显着的性能。

enter image description here

这些资源帮助了我很多:

答案 1 :(得分:0)

我的框架Acolyte提供了一个JDBC驱动程序&专为此目的而设计的工具(模拟,测试......):http://tour.acolyte.eu.org

它已经在一些开源项目(Anorm,Youtube Vitess,......)中使用,无论是使用vanilla Java还是使用其Scala DSL。

handler = handleStatement.withQueryDetection(...).
  withQueryHandler(/* which result for which query */).
  withUpdateHandler(/* which result for which update */).

// Register prepared handler with expected ID 'my-unique-id'
acolyte.Driver.register("my-unique-id", handler);
// then ...
Connection con = DriverManager.getConnection(jdbcUrl);
// ... Connection |con| is managed through |handler|