首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >单元测试破坏性方法

单元测试破坏性方法
EN

Stack Overflow用户
提问于 2011-03-17 12:32:35
回答 3查看 322关注 0票数 3

在对模型和修改数据库的方法/函数进行单元测试时,单元测试的最佳方法或思维模式是什么?例如,模型中的“发布”函数除了通过/失败之外没有可测试的行为,并且在通过的情况下,它修改数据库。最佳实践还是方法?

目前的想法是在测试之前创建当前数据库的镜像,然后在我的单元测试文件中更改数据库选择。谢谢你的建议。

EN

回答 3

Stack Overflow用户

发布于 2011-03-17 14:25:14

如果你想做单元测试(=隔离测试):

  • 业务逻辑将针对假数据库(存储库模拟)执行
  • 测试检查业务逻辑是否真的调用了存储库删除方法。

如果您希望使用业务逻辑和数据库进行集成测试,您可以

  • 打开数据库事务
  • 通过sql将数据添加到数据库
  • 执行销毁刚添加的数据的业务逻辑
  • 验证数据不再位于数据库中(通过sql)
  • rollback

更新:

如果您使用的是.NET,那么应该看看ndbunit for java dbunit

票数 6
EN

Stack Overflow用户

发布于 2011-03-17 14:32:33

如果您使用的是.net,请使用xtunit。这将把您的测试包装在一个事务中,并在完成时回滚它。

票数 1
EN

Stack Overflow用户

发布于 2011-03-17 16:17:44

不镜像数据库...去掉它。如果你是在数据库上测试,你不是在进行单元测试。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5334885

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档