我希望这不是一个愚蠢的问题,而是我一直在想的事情.我希望编写单元测试一个方法,其中包含一些逻辑来检查某些值是否为空.
public void MyMethod(string value1, string value2)
{
if(value1 != null)
{
//do something (throw exception)
}
if(value2 != null)
{
//do something (throw exception)
}
//rest of method
}
Run Code Online (Sandbox Code Playgroud)
我想通过将null值传递给方法来测试它.我的问题是我应该为每个参数创建一个单元测试,还是可以创建一个单元测试,检查如果我将value1设置为null然后检查如果我将value2设置为null会发生什么.
即
[TestMethod]
public void TestMyMethodShouldThrowExceptionIfValue1IsNull()
{
//test
}
[TestMethod]
public void TestMyMethodShouldThrowExceptionIfValue2IsNull()
{
//test
}
Run Code Online (Sandbox Code Playgroud)
要么
[TestMethod]
public void TestMyMethodWithNullValues()
{
//pass null for value1
//check
//pass null for value2
//check
}
Run Code Online (Sandbox Code Playgroud)
或者它有什么不同?我想我在某个地方读到你应该限制自己每单元测试一个断言.它是否正确?
在此先感谢Zaps
| 归档时间: |
|
| 查看次数: |
833 次 |
| 最近记录: |