Итак, я только начал использовать Steak, который, в свою очередь, использует Capybara, который, в свою очередь, использует Selenium.
Итак, я слышал, что это хорошая практика RSpec - разбивать тестирование на множество маленьких it-предложений, каждый из которых тестирует небольшой фрагмент функциональности. Но тогда тестовый прогон занимает больше времени, потому что для каждого теста повторяются одни и те же шаги.
Допустим, я тестирую некоторые функциональные возможности ajax. Я хочу проверить это:
- форма появляется при нажатии на определенную ссылку
- появляются сообщения об ошибках, если я отправляю неверные данные в эту форму
- появляется подтверждающее сообщение, если я отправляю правильные данные и т. Д.
Но если я разбил каждую из этих вещей на отдельные тестовые сценарии, то Selenium должен начать с нуля: он должен загрузить одну и ту же страницу три раза, щелкнуть ссылку, чтобы форма появилась три раза, и т. Д. мне кажется расточительным.
То, что я хотел бы сделать, это указать последовательность тестов, которые сохраняют состояние браузера, поэтому каждый тест продолжается с того места, где остановился предыдущий. Это возможно?