Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
[TestFixture]
class SomeTests{
[Test]
public void Test(){
@"Given initial value is 5
When multiply it by 2
Then it should be 10
".Execute(In.Context<MultiplySteps>())
}
}
[ActionSteps]
public class MultiplySteps{
int _value;
[Given("initial value is $value")]
public GivenInitialValue(int value){
_value = value;
}
[When("multiply it by $mul")]
public GivenInitialValue(int mul){
_value = _value*mul;
}
[Then("it should be $expected")]
public GivenInitialValue(int expected){
Assert.IsTrue(_value==expected)
}
}
При правильной организации модульных тестов given — в предыницализации теста, when — одна строчка, then — мясо теста.Я так и написал, только не мясо а проверки (Assert).
Наверно у вас просто неправильные тесты — раз понадобился такой странный механизм.
Это неправильные пчелы и они дают неправильный мед
В общем очередной велосипед.
Вот вы же предложили распространить решение NuGet пакетом
И это уже проблема.
Да чего я вам объясняю очевидные проблемы велосипедов.
Создаем NUnit тесты в BDD стиле