java - JPA 的单元测试用例值得吗?无论如何,它只是要访问数据库,为什么我们需要它?

标签 java unit-testing jpa

JPA 的单元测试用例值得吗?无论如何,它只是要访问数据库,为什么我们需要它?

最佳答案

到目前为止,我不同意大多数答案。对于大多数企业应用程序,大部分业务逻辑都嵌入在数据库查询中,如果您使用 JPA,则大多数业务逻辑都嵌入在 JPQL 中,有些可能非常复杂。这是您正在编写的代码,因此您应该测试它。

如果查询很简单(没有复杂的联接或条件),那么就不必担心,但根据我的经验,这些应用程序很少见,您可能不需要像 JPA 这样强大的东西来构建它们。对于那些天真地试图使其持久层摆脱“业务逻辑”的应用程序,您将付出可扩展性的代价。

对于大多数 JPA 应用程序来说,测试在容器外部运行作为正常的、持续集成的构建的一部分至关重要。典型的方法是使用 HSQLDB 或 H2 等内存数据库。

Java EE 与 Rails 和 Django 等框架竞争,这些框架期望开发人员针对专门用于此目的的真实数据库对其代码进行单元测试。 JPA 开发人员应该期待同样的结果。

关于java - JPA 的单元测试用例值得吗?无论如何,它只是要访问数据库,为什么我们需要它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/452631/

相关文章:

java - Jpa Repository save() 不更新现有数据

java - Swing:重置 ObjectOutputStream 时出现 EDT NullPointerException

java - Spring JTA TransactionManager 配置 : Supporting both Tomcat and JBoss

java - 将 TextView 转换为超链接

delphi - 对返回复杂数据集的类进行单元测试

java - Spring Controller 中搜索的方法不起作用

java - JPA 实例比预期的多

java - 在 JSP 和 Apache Derby 数据库中连接 Driver Manager 时出现 Classnotfound 异常/如何为普通 Java 应用程序构建数据库连接

database - 遗留数据库、Fluent NHibernate 和测试我的映射

javascript - 如何为以下 Angular 方法编写测试用例