Привет!
В связи с отсутствием достаточного опыта, периодически возникают разные вопросы, не имеющие очевидного мне ответа.
Вот сейчас задумался о правильности использования asserts в NUnit.
Представьте себе один небольшой, но очень гипотетически гордый фреймворк для функционального тестирования с помощью WebDriver и NUnit. Идея изначально была в том, чтобы завернуть все проверки подальше и поглубже от того, кто собственно будет создавать тест-кейсы (предполагая его невысокую квалификацию, например).
Так вот, насколько это будет плохой или хорошей практикой вместо Assert вызывать собственные исключения, генерируемые при автоматических проверках внутри фреймворка.
То есть чтоб тест выглядел примерно так:
MainPage.OpenPage().SetData(data).CalculateClick().HomeClick();
а не так
MainPage page = MainPage.OpenPage();
page.SetData(data);
Assert........;
Assert........;
Assert........;
page.CalculateClick()
Assert........;
Assert........;
Assert........;
page.HomeClick();
Assert........;
Такая мысль возникла в том числе потому, что в тестируемом проекте очень много зависимых друг от друга элементов (активность элементов, загрузка справочников в зависимости от предыдущего выбора и т.п.). То есть, мне видится, что описать логику страницы лучше один раз, чем делать это потом многократно.
Но раз так никто не делает, то логичный возникает вопрос: что не так в моем понимании вопроса?