如何编写一个包含数据库事务的 junit 测试用例,我们不确定输出.. 假设在基于多个条件查询后从查询或 ID 中获取计数。如果我们正在检查 count > 0 或 Id > 0,这是一个有效的比较吗?
最佳答案
测试的整个概念依赖于将实际状态与预期相匹配。 这意味着期望是明确定义的并且是事先知道的。
我猜你正在尝试检查交易,在这种情况下你应该模拟数据。
您可以从预定义的模拟数据(始终是相同的数据)开始,这样代码将查询现有数据并且您将确切知道预期返回的内容。
或者,您可以在测试开始时创建一个随机数据并构建测试流程,以便您始终知道查询的结果是什么。
虽然这些方法几乎相同,但当需要在同一模式/数据库上并行运行测试时,第二种方法会派上用场。 另一方面,也许此类测试的编码会有些棘手。
希望对你有帮助
关于java - 如何为未知输出编写 JUnit 测试用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19220767/