มีวิธีการใดในกรอบงาน xUnit.net ที่คล้ายกับคุณสมบัติต่อไปนี้ของ NUnit หรือไม่?
[Test, TestCaseSource("CurrencySamples")]
public void Format_Currency(decimal value, string expected){}
static object[][] CurrencySamples = new object[][]
{
new object[]{ 0m, "0,00"},
new object[]{ 0.0004m, "0,00"},
new object[]{ 5m, "5,00"},
new object[]{ 5.1m, "5,10"},
new object[]{ 5.12m, "5,12"},
new object[]{ 5.1234m, "5,12"},
new object[]{ 5.1250m, "5,13"}, // round
new object[]{ 5.1299m, "5,13"}, // round
}
สิ่งนี้จะสร้างการทดสอบ 8 แบบแยกกันใน NUnit GUI
[TestCase((string)null, Result = "1")]
[TestCase("", Result = "1")]
[TestCase(" ", Result = "1")]
[TestCase("1", Result = "2")]
[TestCase(" 1 ", Result = "2")]
public string IncrementDocNumber(string lastNum) { return "some"; }
สิ่งนี้จะสร้างการทดสอบแยกกัน 5 รายการและเปรียบเทียบผลลัพธ์โดยอัตโนมัติ ( Assert.Equal()
)
[Test]
public void StateTest(
[Values(1, 10)]
int input,
[Values(State.Initial, State.Rejected, State.Stopped)]
DocumentType docType
){}
สิ่งนี้จะสร้างการทดสอบแบบรวม 6 ครั้ง ล้ำค่า.
ไม่กี่ปีที่ผ่านมาฉันลองใช้ xUnit และชอบมาก แต่มันขาดคุณสมบัติเหล่านี้ ขาดไม่ได้เลย มีอะไรเปลี่ยนแปลงไปไหม?