Dan*_*rea 1 c# nunit unit-testing
我正在使用 NUnit 3.8.1,我正在尝试做一个非常简单的测试:
[TestCase(0)]
[TestCase(11)]
[TestCase(12)]
[TestCase(13)]
[TestCase(14)]
public void GivenUserCreatesPinWhenItIsInWrongPositionThenThrowArgumentException(uint position)
{
//Assert
Assert.Throws<ArgumentException>(() =>
{
new PositionPin(position);
});
}
Run Code Online (Sandbox Code Playgroud)
我得到这个例外:
消息:System.ArgumentException:“System.Int32”类型的对象无法转换为“System.UInt32”类型
一旦我通过 int 更改 uint 并将 int 转换为 uint 在它工作的方法中。我真的不想这样做,有没有办法保留我的 uint?
u直接用 an告诉编译器,这个数字就是一个System.UInt32数字。
[TestCase(0u)]
[TestCase(11u)]
//...
Run Code Online (Sandbox Code Playgroud)
或:使用 int 作为参数并使用 (uint) 进行转换
| 归档时间: |
|
| 查看次数: |
422 次 |
| 最近记录: |