有很多关于单元测试的文章,但我几乎找不到任何有关集成测试的书籍/博客?能否请您就此主题向我推荐一些内容?
进行集成测试时要编写哪些测试? 什么是良好的集成测试? 等等
由于
答案 0 :(得分:5)
由JUnit和SUnit的父亲Kent Beck编写的任何内容都是一个很好的起点(一般来说是单元测试/测试编写)。我假设你并不是指“持续集成”,这是一种基于流程的构建方法(当你开始工作时非常酷)。
根据我自己的经验,集成测试看起来非常类似于常规单元测试,只是在更高的层次上。更多模拟对象。更多状态初始化。
我相信整合测试就像洋葱。他们有层次。
有些人更喜欢“整合”他们的所有组件,并将“整个”产品作为 “集成”测试进行测试。你当然可以做到这一点,但我更喜欢更加渐进的方法。如果你从较低级别开始,然后继续在更高的组合层进行测试,那么你将实现集成测试。
答案 1 :(得分:4)
可能通常很难找到有关集成测试的信息,因为它更具体地针对实际应用程序及其业务用途。不过,这是我的看法。
适用于单元测试的内容也适用于集成测试:模块应该有一种简单的方法来模拟其外部输入(文件,数据库,时间......),以便它们可以与其他单元测试一起进行测试
但是我发现非常有用,至少对于面向数据的应用程序而言,是能够创建应用程序的“控制台”版本,该版本接受完全确定其状态的输入文件(不依赖于数据库,网络资源...),并将结果作为另一个文件输出。然后,可以维护成对的输入/预期结果文件,并测试回归作为夜间构建的一部分。拥有这个控制台版本可以更轻松地编写脚本,并使调试变得非常容易,因为人们可以依赖非常稳定的环境,很容易重现错误并运行调试器。
答案 2 :(得分:2)
J.B。 Rainsberger写了关于他们的文章。这是InfoQ文章的链接,其中包含更多信息。
http://www.infoq.com/news/2009/04/jbrains-integration-test-scam