Лучшая практика использования файла функций Specflow

Заранее спасибо за помощь.

Мой вопрос относится к лучшим практикам в файле функций SpecFlow?

Вопрос:

Использование команды ожидания внутри файла возможностей считается плохой практикой.

Пример:

And i click on the username
And wait 5 seconds
And i input new value into last name

Команда ожидания вызывает 5-секундное ожидание. Я делаю это, чтобы убедиться, что страница загружена, чтобы предотвратить ошибки "элемент не найден" или другие ошибки. В основном, чтобы убедиться, что у меня есть чистая страница для манипулирования.

Не лучше ли использовать ожидание внутри самого файла Step?

//using Fluent Automation
I.WaitUntil(() => ());
//or
I.Wait(); //timespan

Моя причина не использовать ожидание Fluent Automation:

При использовании метода Fluent Automation вы зависите от времени ожидания по умолчанию в объекте настроек. Тайм-аут по умолчанию в некоторых случаях может быть недостаточно длинным или длинным. Мне кажется очень многословным постоянно изменять / сбрасывать объект "Настройки" с единственным преимуществом - удалять команды ожидания из файла объектов.

Так что же такое лучшая практика?

Спасибо,

-n

1 ответ

Я думаю, что наилучшей практикой является сохранение файла функций для ваших сценариев и отсутствие подробностей реализации.

Поскольку мы следуем процессу BDD ( http://dannorth.net/introducing-bdd), то файл функций является результатом этого разговора между вами и экспертом процесса, а сценарий представляет собой шаги, которые вы собираетесь предпринять для докажите, что ваша функциональность работает для этого примера. Можно надеяться, что эти этапы определяют бизнес-процесс и могут выполняться любой системой, а не только той, которую мы сейчас разрабатываем. В идеале эта логика отражает наше намерение и может быть повторно использована в любых будущих системах, которые могут заменить текущую.

Так что я просто не вижу, что вы говорите, что вам нужно подождать

....

Хотя вы можете сказать

When the page has loaded

и это довольно хорошо отображается на беглую автоматизацию.

Другие вопросы по тегам