Как правильно проверять отображение изображения на сайте (Selenium WebDriver, C#)

Как правильно проверять отображение изображения на сайте (Selenium WebDriver, C#)
В процессе написания автоматических тестов иногда приходится проверять видимость/отображение изображения на сайте: главная картинка страницы, блока и т.д. Однако простая проверка методом «Displayed» нам не поможет, а точнее она проверяет не совсем то, что нам нужно. Давайте всё рассмотрим на примерах.
Подробнее

Почему NUnit Agent завершает работу с ошибкой «NUnit Agent has stopped working»

Почему NUnit Agent завершает работу с ошибкой NUnit Agent has stopped working
При написании автоматических тестов для тестирования сайтов я использовал многопоточность. Об этом я рассказывал в своей предыдущей статье. Однако реализовав описанное в предыдущей статье, я столкнулся с проблемой, когда NUnit agent вываливался с ошибкой «NUnit Agent has stopped working».
Подробнее

Как отслеживать и закрывать любые всплывающие окна (Selenium WebDriver, C#)

Как отслеживать и закрывать любые всплывающие окна (Selenium WebDriver, C#)
В данной статье я расскажу, как отлавливать и закрывать любые окна в любой момент времени. При этом мы конечно же должны знать, что есть некое окно, которое может всплывать на сайте, это необходимо, чтобы в коде его указать. Сейчас речь идёт не о всплывающих сообщениях JavaScript, хотя думаю можно приспособить написанное ниже и под них.
Подробнее

Как в C# запустить стороннюю программу с параметрами

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

Как генерировать собственный отчёт в тестах NUnit (Selenium WebDriver, C#)

Как генерировать собственный отчёт в тестах NUnit (C# + Selenium WebDriver)

Сразу хочу сказать, что NUnit используется мной при написании автоматических тестов с помощью C# + Selenium WebDriver, но думаю это не играет особой роли при создании инструмента генерации собственного отчёта. Отчёт формируется в формате HTML.
Подробнее

Как реализовать NUnit тесты в виде исполняемого файла (C#)

Как реализовать NUnit тесты в виде исполняемого файла (C#)
У нас на проектах мы пишем автоматизированные тесты для сайтов используя связку “Selenium WebDriver + C# + NUnit”. Обычно тесты с использованием NUnit пишут в виде библиотеки. Потом эти тесты запускаются с использованием специальной утилиты от разработчиков NUnit. Это же делали и мы. Однако в один из дней пришло понимание, что нам удобнее будет писать тесты, которые будут содержаться в исполняемом файле. В итоге изучив данный вопрос я переписал проекты по автоматизированному тестированию, тесты в которых содержатся не в библиотеке DLL, а в исполняемом файле.
Подробнее

Как проверить наличие (if…exist) или видимость элемента без вызова исключения/ошибки (Selenium WebDriver, C#)

Как проверить наличие элемента (if...exist) без вызова исключения/ошибки (Selenium WebDriver, C#)
В процессе написания автоматических тестов, с использованием Selenium WebDriver, появилась необходимость проверять наличие элемента на странице и, если элемент не существует, выполнять одни действия, если существует, то выполнять другие действия. К примеру, сейчас я работаю в сфере туристического бизнеса. При проверке функциональности сайта надо перейти в определённый тур и если есть билеты на текущее число (и кнопка «Бронировать»), то произвести заказ, если нету, то надо вернуться назад и выбрать другой тур. И так до тех пор, пока не будет найден тур, по которому можно осуществить заказ.
Подробнее

Как выбрать значение из выпадающего списка (Selenium WebDriver, C#)

Как выбрать значение из выпадающего списка (Selenium WebDriver, C#)
Сегодня рассмотрим вопрос, как выбрать требуемое нам значение из выпадающего списка при написании тестов на C# и Selenium WebDriver. В процессе написания тестов я столкнулся с двумя типами выпадающих списков, работу с которыми мы и рассмотрим.
Подробнее

Поиск элементов на странице не имеющих «class» и «id», но содержащих текст (Selenium WebDriver, C#)

Поиск элементов на странице не имеющих class и id, но содержащих текст (Selenium WebDriver, C#)
Рано или поздно при разработке автоматических тестов вы столкнётесь с задачей, когда надо будет найти элемент (html тег), у которого нет атрибутов «class» и «id». Представьте ситуацию, когда на странице есть несколько элементов без «class» и «id» и все они содержат одинаковый текст, но в определённый момент только один из них видимый, а остальные в коде есть, но визуально не видны.
Подробнее

Как реализовать ожидание скрытия/появления элемента на странице (Selenium WebDriver, C#)

Как реализовать ожидание скрытия/появления элемента на странице в (Selenium WebDriver, C#)
В процессе написания автоматических тестов я столкнулся с проблемой, когда необходимо было дождаться скрытия какого-либо элемента и далее продолжить выполнение тестов. К примеру, нажимается кнопка и сервис выполняя какие-либо действия показывает временно панель прогресса, чтобы пользователь не думал, что всё зависло. Если не поставить ожидание скрытия данной панели, то автоматические тесты попытаются продолжиться без ожидания. Что в этом случае произойдёт? Правильно, тесты будут провалены, так как остальные элементы страницы недоступны, пока поверх всего находится панель отображающая прогресс выполнения текущей операции.
Подробнее