c# - 使用 ArgumentValidator.VerifyNotNullOrEmpty 进行单元测试
问题描述
我正在做单元测试。我有以下方法:
public PortfolioFileGetListDto(string documentsCaseNumber)
{
ArgumentValidator.VerifyNotNullOrEmpty(documentsCaseNumber, nameof(documentsCaseNumber));
CaseNumber = documentsCaseNumber;
}
我尝试像这样对这种方法进行单元测试:
[TestMethod]
public void PortfolioFileGetListDto_Constructor_ShouldValidateParameters()
{
// Portfolio
Action act = () => new PortfolioFileGetListDto(null);
act.Should().Throw<ArgumentNullException>().WithMessage("Value cannot be null.\n\rParameter name: portfolio");
}
但是如果我调试单元测试,我会得到以下异常:
System.ArgumentNullException: 'Value cannot be null.
Parameter name: documentsCaseNumber'
那么如何通过这个单元测试呢?
谢谢
解决方案
断言取决于您使用的单元测试框架。
对于 Microsoft 测试平台:
var exception = Assert.ThrowsException<Exception>(x => {
new PortfolioFileGetListDto(null);
});
Assert.AreEqual("Value cannot be null.\n\rParameter name: portfolio", exception.Message);
推荐阅读
- javascript - 我如何检查不和谐的所有者和许可,以及他们是否具有这些特定角色或在一个 if 条件下?
- c# - 获得 Unity PlayerMovement 的新方法?
- docker - 如何在 Dockerfile 中描述正在运行的 npm 脚本
- python - 比较两个不同大小的数组,按元素?
- javascript - 返回文本的正则表达式 = sign before )
- java - 数组列表和参数 Java
- typescript - Typescript 通用映射,类型为 T[K] 的键映射回 T 本身
- postgresql - Postgres 选择所有连接行匹配的位置
- c# - C#:如何通过传递变量名和值来设置对象的成员
- file - 将新值附加到 .pkl 模型