c# - 您在测试中投入了多少断言?

标签 c# unit-testing

我的想法是一个测试应该只有一个断言。但是有时很难决定我是否需要对其严格或依赖。

让我们举个例子,我有一个有地址的客户。 地址类具有城市-街道-邮政编码-国家等...属性

我想测试在创建客户时是否会填充地址。

我应该为每个属性创建一个测试还是为多个断言创建一个测试

Assert.That(customer.Address.City,Is.EqualTo("London"));
Assert.That(customer.Address.Street, Is.EqualTo("StreetOne"));
Assert.That(customer.Address.Postcode, Is.EqualTo("MyPostCode"));

在测试方法时,您通常会做什么?重要的是您知道属性已被填充,因为它们将发送给第三方?

谢谢你的建议

最佳答案

我会说,这取决于。在你的情况下,我真的没有看到它有什么问题,因为你基本上是在测试单个功能(创建客户)。甚至 NUnit 也通过 TestCase 为这类事情提供了快捷方式。属性。

关于c# - 您在测试中投入了多少断言?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6757260/

相关文章:

Python 单元测试数据提供程序

unit-testing - 单元测试组成

python - Python 中的 Flask 测试——在 repo 中构建一个 API,通过 import_module 对其进行单元测试

c# - Unity - 在游戏对象实例化后重绘/重绘场景

c# - 将可空整数初始化为默认值的最佳实践?

php - 集成测试中的并行 PHPUnit 测试

java - SpringFramework服务单元测试

c# - 自定义配置部分 .NET

c# - 如何将动态sql列读入C#

c# - 具有通用扩展方法的 AutoMapper 映射