我有 NUnit 框架和 TestCaseSourse 的问题。我有一些测试数据:
public TestData[] data = new TestDataBuilder()
.Add("inputFile", "132JoinTest.xml")
.AddRange("delimiter", ";", "")
.AddAllSubsets("sectionNames", new string[] { "Headline", "Byline", "Summary" }).GetTestData();
我也有 TestCaseSource 的数据:
public IEnumerable<TestCaseData> ReduceTagsNumber
{
get
{
yield return new TestCaseData(data[0]);
yield return new TestCaseData(data[1]);
}
}
[TestCaseSource("ReduceTagsNumber")]
public void Execute_ForInputThatCouldBeJoined_ReduceTagsNumber(TestData data)
{
//some code here
}
我仔细检查,data[0] 和 data[1] 包含不同的数据。但是当我运行 NUnit 测试时,它们都使用数据 [0] 运行。我尝试以不同的方式实现这一点,但结果总是相同的。注意:如果我使用 TestData 结构而不是 TestData 类,Nunit 根本看不到第二个 testCase。