我注意到了Visual Studio2010和Netbeans 7中用于测试的功能,并想知道它们到底是做什么的。使用它们会比设计我自己的测试更有效吗?
发布于 2011-10-16 11:51:20
单元测试(与集成测试相对)是测试单个单元(通常是一个类)的功能的测试(通常是碰巧存在于同一个类和文件中的多个测试)。
相比之下,集成测试测试多个不同单元之间的交互。端到端测试是一种特殊类型的集成测试,它测试整个软件堆栈,从UI到下面的所有东西。
有两种不同类型的测试可以进行:“玻璃盒子”和“黑盒”。“黑盒”测试是与实现无关的;它仅基于函数/类的已记录行为编写,并确保任何任意实现都符合已记录的行为。它还可能包括各种理论实现可能产生的潜在错误的测试,但不考虑实际实现做了什么。相比之下,“玻璃盒子”测试是一种利用实现知识并确保实现中的每个代码路径都经过测试的测试。一个好的测试是由全面的黑盒和玻璃盒测试组成的测试。
有许多不同的免费可用的库,它们使得创建单元测试变得很容易。我强烈建议您使用googletest和gmock (这两个工具在谷歌都广泛使用)进行测试。
发布于 2011-10-16 11:49:10
单元测试涉及测试独立于它们通常关联的上下文的单个类或函数。这可以通过消除在找出代码导致错误的确切原因时涉及的一些猜测游戏来缩短故障排除时间。对于具有大量代码或涉及许多人的大型企业项目,单元测试通常是值得花费时间和精力的。
https://stackoverflow.com/questions/7782207
复制相似问题