java - 为使用 jdbc 的应用程序编写测试用例

标签 java mysql maven jdbc

我刚刚开始为我的项目编写测试用例,对此我还是个新手。它是一个 Maven restful web 项目 - jersey 框架。我使用 MySql 数据库。我想为与 DB(JDBC) 交互的方法编写测试用例。我想知道从哪里可以学到这些东西的引用资料。我想使用 JDBC 而不是 HSQL 编写测试用例。如果有人能告诉我在哪里寻找。这将非常有帮助.. 提前致谢。

最佳答案

  1. 将 JDBC 的所有用法隔离在专用类(DAO - 数据访问对象)中,这样做就是:数据库查询。不要从这些方法返回结果集。返回对象集合。
  2. 使用依赖注入(inject)框架(CDI、Spring、Guice 等)将 DAO 注入(inject)到需要执行查询的类(服务)中。这些类将仅使用 DAO 方法来执行这些查询。
  3. 通过注入(inject)模拟 DAO 测试这些服务,返回您告诉他们返回的内容。这允许在不需要任何数据库的情况下测试服务中的业务逻辑。 Mockito ,例如,可用于创建模拟。要注入(inject)它们,您在这里不需要任何框架。只需调用构造函数或 setter 并传递模拟 DAO。
  4. 使用真实数据库测试您的 DAO,并确保每个测试都使用测试所需的数据填充数据库。类似 DbSetup 的工具或 DBUnit这样做很有用。

关于java - 为使用 jdbc 的应用程序编写测试用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32201587/

相关文章:

java - Path.toFile() 的奇怪行为

java - 首次运行 jhipster 应用程序失败,启动 tomcat 上下文时出错

java - 映射 Hibernate 实体的问题 - 包含带条件的左连接的 native 查询

java - 为什么空的 Java 字符串的哈希码为零?

java - 如何为 Hibernate 编写返回两个实体的 jSTL 代码

mysql - WHERE EXISTS mysql查询错误

mysql - 如何在构建时创建填充的 MySQL Docker 镜像

php - 仅退回 1 件商品

java - 经典错误 : Unable to update index for central|http://repo1. maven.org/maven2

java - Maven 站点迁移 - 如何处理?