Однократная авторизация в параллельных тестах

Я попытался запустить тесты параллельно, но, чтобы каждый раз не авторизовываться на каждом методе, прокидывать данные авторизации в Local storage.
Выглядит это следующим образом:

@BeforeTest
public void authorization() {
open(baseUrl);
loginPage.login(USER, PASS);
String value = executeJavaScript("return localStorage.getItem(arguments[0]);", grantKey);
}
@BeforeClass
public void createBrowser() {
Selenide.open(baseUrl);
executeJavaScript("localStorage.setItem(arguments[0], arguments[1]);", grantKey,
                value);

Но после открытия baseUrl в BeforeClass происходит переадресация на страницу авторизации и данные авторизации записываются в Local storage страницы авторизации, а не baseUrl.

Кто может подсказать, как записать Local storage на страницу тестирования, а не авторизации в данном случае?

Типичное решение - в первой строке открывать не Selenide.open(baseUrl), а какую-то публичную страницу на этом же домене. Например, Selenide.open(baseUrl + "/favicon.ico"); или Selenide.open(baseUrl + "/robots.txt");

1 лайк

Решение рабочее.
Спасибо