#java #selenium
Вопрос:
Я работаю над автоматизацией страниц веб-сайта и написал почти 15 сценариев. Теперь проблема в том, что для каждого скрипта первым приоритетом является вход в систему или каждый раз, когда сайт требует входа в систему, поэтому в настоящее время я использовал код входа в начале каждого скрипта.
Есть ли в любом случае возможность создать файл или пакет для входа в систему, чтобы использовать его в каждом сценарии, чтобы я мог пропустить код входа из каждого сценария?
Комментарии:
1. Вы также используете testng ?
2. Да, нужно протестировать сценарии веб-сайта
3. хорошо, я дал ответ ниже, проверьте его и дайте мне знать, если это поможет
Ответ №1:
ИМО, вы можете написать логин @BeforeMethod
и выйти из системы в @AfterMethod
Видеть
@Перед тем, как начать
Аннотированный метод будет выполняться перед каждым методом тестирования.
и
@ПослеДующий метод
Аннотированный метод будет выполняться после каждого метода тестирования.
поэтому , если у вас есть вход в @BeforeMethod
систему , он будет автоматически срабатывать перед каждым @Test
, так что вам не придется снова и снова писать функции входа в систему.
Комментарии:
1. Спасибо за помощь, но не могли бы вы, пожалуйста, объяснить, как это реализовать .
2. Мой код выглядит так: открытый класс XYZ { драйвер WebDriver; @Test(приоритет=1) публичный вход в систему () вызывает исключение InterruptedException { System.setProperty(«webdriver.chrome.драйвер»,»C:\chromedriver_win32\chromedriver.exe»); драйвер=новый ChromeDriver(); драйвер.get(«URL-адрес сайта»); драйвер.управление().окно().развернуть(); веб-элемент txtbx_Email=драйвер.findElement(By.name(«Электронная почта»)); txtbx_Email.SendKeys(«Идентификатор почты»); Thread.sleep(2000);
3. изменить
@Test
на@BeforeTest
4. @DotsTester : Это разрешило ваш запрос ?
5. я заменю тест на Beforetest, но тогда как использовать его во всех сценариях?