unit-testing - 当您进行单元测试时,断言是多余的吗?

标签 unit-testing language-agnostic assert

我还没有习惯写单元测试,我想在一个完整的小工具框架上做这件事(使其使用起来更安全)。那样我肯定会学到更多关于单元测试的知识,而不是到目前为止我学到的知识。

然而,我真的习惯于在任何我看到有上下文的地方系统地添加断言(在最终版本中被删除)。主要作为函数实现中的前提条件,并且每次我检索必须正确的信息时(例如 C/C++ 指针有效性对于一个著名的例子)。

现在我问:当你有单元测试时,断言是多余的吗?因为当您测试一些代码的行为时,它看起来是多余的;但同时它不是相同的执行上下文。

我应该两者都做吗?

最佳答案

检查前提条件的断言可以帮助检测和定位集成错误。也就是说,虽然单元测试表明方法在正确使用(调用)时正确运行,但检查前提条件的断言可以检测对方法的不正确使用(调用)。使用断言会导致错误代码快速失败,这有助于调试。

关于unit-testing - 当您进行单元测试时,断言是多余的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4520847/

相关文章:

android - 如何使用内置框架对在 Android 中使用 HttpClient 的类进行单元测试?

Angular 5 - Jasimine 测试 - 错误 : Invalid provider for the NgModule 'DynamicTestModule' - only instances of Provider and Type are allowed

language-agnostic - Code Golf : Lasers

language-agnostic - 三个值的异或

c# - 如何使用 Moq 框架模拟 ModelState.IsValid?

angularjs - Angular Karma 单元测试 : How to inject a mock service in karma configuration instead of in all test specs

http - 在 "Not Authenticated"和 "Not authorized"情况下使用什么 HTTP 代码?

python - 如何在 Python 的抽象基类中合并类型检查

c++ - 如何将断言放在类初始化列表之前?

python - 在 python 中测试副作用