我有一個測試方法,它將兩個XML文件作爲輸入並進行比較。我在.NET 4.5
上使用Microsoft.VisualStudio.TestTools.UnitTesting
框架。我想修改測試方法,以便它能夠接收多個XML文件(每次兩個),運行測試並分別給出結果。使用數組在C#中進行數據驅動測試
我試過下面的代碼,但它只給出一個單一的輸出,並在任何一對輸入文件未通過測試時停止。
string[] source = {file1, file2, file3, file4....};
string[] target = {fileA, fileB, fileC, fileD....};
[Test Method]
public void TestCase01()
{
TestLogic testObj = new TestLogic(); //class containing the comparison method
for (int i = 0; i < source.Length; i++)
{
Assert.IsTrue (testObj.VerifyFiles(source[i], target[i]));
}
}
在做一些研究,我發現,DataSource
屬性都可以使用。但我不知道如何將兩個數組(或一個二維數組)傳遞給DataSource
屬性。 我傾向於使用Microsoft.VisualStudio.TestTools.UnitTesting
進行測試,並且僅將NUnit
等其他第三方框架作爲最後的手段。
編輯: 我不知道輸入文件的數量。我僅以4個文件爲例。 在將文件傳遞給TestMethod之前,我使用它們的ID將它們配對。所以我首先從兩個不同的文件夾中讀取兩組文件,根據它們的ID將它們配對,然後將配對文件傳遞給測試用例進行測試。我現在的做法是將配對的文件名(源和目標)保存在數組或列表中,然後將它們傳遞給測試用例。顯然,這種方法不起作用,我正在經歷上面提到的問題。
請您詳細說明一下嗎?也許給它一些演示代碼。 – Vijay