Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Как сделать аутентикацию на сайте на Java Selenium Webdriver?

java
selenium
maven
webdriver
Теги: #<Tag:0x00007f7b624c2ea0> #<Tag:0x00007f7b624c2d60> #<Tag:0x00007f7b624c2c20> #<Tag:0x00007f7b624c2ae0>

(Alex Alex) #1

Всем привет парни. Тренируюсь с селениумом.
Есть такая ссылка http://the-internet.herokuapp.com/
Переходишь на нее и жмешь Basic Auth и у тебя появляется окно куда надо ввести юзернейм и пасс.
Вот мне этот кейс не пройти.
Пробовал сделать так - не вышло.

private static WebDriver driver;
private String URL = "admin" + ":" + "admin"  +"@http://the-internet.herokuapp.com/";

    @Test
    public void Auth(){
        driver.get("http://the-internet.herokuapp.com/");
        driver.findElement(By.xpath("//*[@id=\"content\"]/ul/li[2]/a")).click();
        driver.get(URL);
    }

(Антон Швец) #2

Попробуй так:

private String URL = "http://admin:admin@the-internet.herokuapp.com/";

и потом в тесте сразу:
driver.get(URL); 

(Alex Alex) #3

так ничего не происходит, если я сразу get(URL) делаю.
По логике мне же надо нажать сначала на Basic Auth ссылку, а только потом ввести юзернейм и пасс :frowning:


(Fiodar Motin) #4

selenide

 @BeforeClass
    public void setUp(){
        System.setProperty("webdriver.gecko.driver", "src/main/resources/geckodriver.exe");
        Configuration.browser = "firefox";
    }

    @Test
    public void login(){
        Selenide.open("http://the-internet.herokuapp.com/basic_auth","","admin","admin");
    }

На этом можно закончить


(Alex Alex) #5

Спасибо вам уважаемый. Но я сейчас учу чисто селениум, без селенида. Можете подсказать код селениума? =)


(Dmitry Astanin) #6

По сути, там все так же как и логин через урл делается. У вас не получилось, потому что урл не правильный

Вот так заработает
String URL = “http://admin:admin@the-internet.herokuapp.com/basic_auth/”;


(Alex Alex) #7

Спасибо, сработало :slight_smile: