gpt4 book ai didi

java - 可行的数据库测试

转载 作者:行者123 更新时间:2023-12-01 04:47:50 24 4
gpt4 key购买 nike

我被分配的任务是调查我们应该如何在即将到来的项目中执行测试。

我目前正在尝试决定何时应该对 SQL 语句进行结构化测试。我得出的结论是,对“get”语句进行测试以确保它们返回正确的数据可能是一个好主意,但不要测试插入、删除或更新,因为这可以轻松地通过如果缺少某些依赖项,在 DB 和 foregin 中选择键将引发异常。

现在,我一直在检查用于执行这些测试的 DBunit,但我有一些顾虑:

1.按照上述方法进行测试是否可行?或者创建这些测试和插入测试数据所花费的时间不值得吗?也许让开发人员测试这个临时项目就足够了?

2.似乎为每个测试决定正确的测试数据可能会很耗时。测试数据应手动插入到 DBunit 所需的平面 xml 文件中(如果您让 DBunit 生成预期数据,则您依赖于获取该数据的 SQL)。是这样吗?

3.有没有更好、更简单的方法来执行数据库测试来验证SQL语句?

该项目将使用 Hibernate、Java 和 MS SQL Server

最佳答案

您可以使用 dbunit,也可以以编程方式构建数据库内容(在每个测试中)。重要的部分是让测试框架(例如 spring 测试)在每次测试后进行回滚。一旦设置了环境,就可以轻松测试在单个事务(获取、插入、删除)中完成的 DML。

如果您想测试 DDL(某些数据库在事务之外执行此操作),那么您必须在每次测试之前手动回滚或从头开始创建数据库(例如在内存数据库中)。通常不需要 DDL 测试,因为 Hibernate 会进行验证部分

是的:您应该测试您的查询 - 花一些时间准备环境是值得的

关于java - 可行的数据库测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15527357/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com