在C#中,可以使用NUnit或MSTest等测试框架来编写针对具有可选参数的方法的单元测试
首先,安装NUnit和NUnit3TestAdapter包。在.csproj文件中添加以下内容:
接下来,创建一个名为Calculator.cs
的类,其中包含一个具有可选参数的方法:
public class Calculator
{
public int Add(int a, int b, int c = 0)
{
return a + b + c;
}
}
现在,创建一个名为CalculatorTests.cs
的测试类,并编写针对Add
方法的单元测试:
using NUnit.Framework; [TestFixture] public class CalculatorTests { private Calculator _calculator; [SetUp] public void Setup() { _calculator = new Calculator(); } [Test] public void Add_WithoutOptionalParameter_ReturnsExpectedResult() { // Arrange int a = 5; int b = 3; int expectedResult = 8; // Act int result = _calculator.Add(a, b); // Assert Assert.AreEqual(expectedResult, result); } [Test] public void Add_WithOptionalParameter_ReturnsExpectedResult() { // Arrange int a = 5; int b = 3; int c = 2; int expectedResult = 10; // Act int result = _calculator.Add(a, b, c); // Assert Assert.AreEqual(expectedResult, result); } }
在这个例子中,我们编写了两个测试:
Add_WithoutOptionalParameter_ReturnsExpectedResult
:测试不使用可选参数的情况。Add_WithOptionalParameter_ReturnsExpectedResult
:测试使用可选参数的情况。
这样,我们就为具有可选参数的方法编写了单元测试。当然,你可以根据需要添加更多的测试用例来覆盖其他场景。