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

Как генерировать собственный отчёт в тестах 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#)
В процессе написания автоматических тестов я столкнулся с проблемой, когда необходимо было дождаться скрытия какого-либо элемента и далее продолжить выполнение тестов. К примеру, нажимается кнопка и сервис выполняя какие-либо действия показывает временно панель прогресса, чтобы пользователь не думал, что всё зависло. Если не поставить ожидание скрытия данной панели, то автоматические тесты попытаются продолжиться без ожидания. Что в этом случае произойдёт? Правильно, тесты будут провалены, так как остальные элементы страницы недоступны, пока поверх всего находится панель отображающая прогресс выполнения текущей операции.
Подробнее

Многопоточность в C#: как работать с потоками в C# и как в потоке обращаться к элементам формы

Многопоточность в C#: как работать с потоками в C# и как в потоке обращаться к элементам формы
Наступил день, когда мне понадобилась многопоточность в C#. Я мог бы и не использовать в приложении многопоточность, но тогда в момент работы приложения создаётся впечатление, что приложение зависает в момент, когда приложение ожидает завершения какой-либо операции через .Wait().
Подробнее

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

Как открыть и закрыть форму из другой формы в C# (правильное решение)
C# изучаю не так давно и встала передо мной недавно задача:
— открыть Form2 при нажатии на кнопку в Form1;
— спрятать Form1;
— открыть Form1 при закрытии Form2.
На первый взгляд задача показалась элементарной, но… возникли нюансы — при закрытии приложения оно не выгружалось и в диспетчере задач мы наблюдали его работу, хотя визуально оно как бы закрылось.
Подробнее

Как создать генератор паролей на C#

111
Не так давно начал осваивать азы C#. До этого я создавал утилиты и небольшие программы на Visual Basic включая Visual Basic for applications. За плечами техникум и институт, но там, как ни странно, меня не учили программировать вообще, поэтому Visual Basic я изучал самостоятельно, а теперь перешёл на C#.
Подробнее

UnexpectedAlertBehavior в FirefoxDriver или как FirefoxDriver обрабатывает модальные окна (Selenium WebDriver, C#)

UnexpectedAlertBehavior в FirefoxDriver или как FirefoxDriver обрабатывает модальные окна
При написании тестов с использованием Selenium WebDriver + C# + Nunit прописываю в коде методы обработки модальных окон, которые появляются на страницах тестируемого сервиса. ChromeDriver отрабатывает тесты замечательно. Меняю настройки тестов на использование FirefoxDriver и при прохождении тестов сразу получаю ошибку. В ошибке говорится, что не находим всплывающих окон. Как так? Запускаю тесты и внимательно наблюдаю за процессом. Модальные окна появляются и быстро исчезают. Почему?
Подробнее