2012-05-22 4 views
2

У меня есть тест функции:Чтобы проверить функцию с различными значениями

[TestMethod()] 
public void CreateTest(string input) 
{ 
    string expected = "321"; 
    Assert.AreEqual(expected, input); 
} 

Мне нужно, чтобы запустить этот тест с разными данными: CreateTest("321"); CreateTest("123"); CreateTest(null); я не знаю, как это сделать, прежде чем я сделал что-то вроде [TestCase("123")], [TestCase("321")]

мне нужно что-то, что:

[RowTest] 
[Row(1,1,2)] 
[Row(2,1,3)] 
[Row(1,-1,0)] 
public void SumTest(int a1, int a2, int result) 
{ 
    Assert.AreEqual(a1 + a2, result); 
} 
+0

Как вы будете обрабатывать свой «ожидаемый» результат, если вход случайный? –

+0

Возможный дубликат http://stackoverflow.com/questions/9021881/how-to-run-a-test-method-with-multiple-parameters-in-mstest –

+0

замените скриншот с помощью copypasted code please – Alex

ответ

1

вы пробовали data-driven unit testing? Он не использует атрибуты класса, но он должен давать вам те же результаты.

Если вы хотите достичь высокого покрытия кода, возьмите look at the Pex power tool.

Если вы хотите модели тесты (MBT) Spec Explorer is also worth review.

+1

+1 Я шел упомянуть Pex перед вашим редактированием –

Смежные вопросы