Есть ли способ войти в систему только один раз, а затем пропустить вход для следующих тестов? - PullRequest
0 голосов
/ 26 июня 2019

Я использую chromedriver и Selenium с C #.Я хотел бы только войти в свой первый тест, а затем пропустить вход в следующих тестах, чтобы сэкономить время.Есть ли способ сделать это?

ChromeOptions options = new ChromeOptions();
options.AddArguments("start-maximized");
options.AddArguments("ignore-certificate-errors");
options.AddArguments("user-data-dir=C:/Temp/chrome");

driver = new ChromeDriver(options);

Ответы [ 2 ]

1 голос
/ 26 июня 2019

зависит от того, как вы готовы запускать тестовые случаи. Допустим, если вы хотите запустить все тестовые случаи только в одном браузере, то вы можете это сделать.

in beforesuite или beforetest запустить браузер и выполнить вход. передать тот же экземпляр браузера или веб-драйвера другим тестовым случаям. Это приводит к зависимости и позволяет избежать использования параллельного выполнения, что очень полезно, когда ни один из тестовых случаев не увеличивается.

Другой способ - использовать уже существующий профиль Chrome. посмотрите это например Как запустить селен с помощью драйвера Chrome и всех существующих файлов cookie браузера?

0 голосов
/ 26 июня 2019

Один из способов - получить файлы cookie из браузера при первом входе в систему и добавить эти файлы cookie в каждый новый браузер (при запуске), чтобы пропустить вход в систему. Прочтите это для получения дополнительной информации https://www.guru99.com/handling-cookies-selenium-webdriver.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...