我想要[Test]
接收参数,而不使用[TestCase]
,因为此参数可以采用多个值。我似乎找不到办法做到这一点。
以下是我想做的事情:
[Test]
static public void NUnitWriter(int errorCode)
{
Assert.AreEqual (0, errorCode);
}
此函数只接收错误代码,如果它不是0(发生问题),则断言。
答案 0 :(得分:4)
要传入变量,请使用Data driven tests
[DataSource(@"Provider=Microsoft.SqlServerCe.Client.4.0; Data Source=C:\Data\MathsData.sdf;", "Numbers")]
[Test]
static public void NUnitWriter()
{
int x = 0
int errorCode = Convert.ToInt32(TestContext.DataRow["ErrorCode"]);
Assert.AreEqual (x, errorCode);
}
从Xml
传入 [DataSource("Table:CSharpDataDrivenTests.xml#FirstTable")]
[Test]
static public void NUnitWriter()
{
int x = 0
int errorCode = Convert.ToInt32(TestContext.DataRow["ErrorCode"]);
Assert.AreEqual (x, errorCode);
}