我目前正在开发一个需要测试数据库包和函数的项目。 我们需要向数据库包提供输入参数并测试包返回期望值,我们还要测试请求的响应时间。
请提供建议,如果有任何工具可用于执行此操作,或者我们可以在Junit或其他框架中编写测试用例。 哪一个最好的方法?
答案 0 :(得分:0)
当我不得不进行DWH测试时,我使用了更原生的方法。我已经围绕已经存在的Dev数据集成框架安排了测试框架。所以我有很多可重用的工作,配置和代码。但是像你建议的那样使用OOP
在Junit编写我们的测试用例
也是一种方式。但请记住,DWH设计通常非常复杂(需要考虑很多方面),并且与持久层的交互并不总是测试策略的最佳候选者。更面向数据库的解决方案(如tSQLt)提供了显着的性能。
这些资源帮助了我很多:
答案 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|