如果我不知道将在执行期间传递的参数,如何从Nunit控制台执行以下代码。
[TestCase]
public void ExecuteString(string someValue)
{
Console.WriteLine(someValue);
}
我知道我们应该以这种格式传递参数[TestCase(" Values")]。但如果我不确定参数是什么?
答案 0 :(得分:1)
您不能以这种方式使用TestCase属性,但有TestCaseSource属性可以使用变量和运行时值。
它的工作原理如下所示。这可能是你想要的吗?
[Test, TestCaseSource(typeof(string), nameof(SomeClass.someCases))]
public void Test(string someValue)
{
Console.WriteLine(someValue);
}
private class someClass
{
public static IEnumerable someCases
{
get
{
yield return
new TestCaseData("valuefornow");
yield return
new TestCaseData("valueforlater");
}
}
}