Size: a a a

QA — Автоматизация

2020 September 11

T

Tyrion in QA — Автоматизация
Всем привет
ребят, столкнулся с проблемой - не запускаются тесты в хедлесс на винде (хром 85.0.4183.102)
пробовал рекомендуемые опции, но ошибка никуда не уходит
подскажите как это побороть?

Ошибка которую ловлю:
OpenQA.Selenium.WebDriverException : unknown error: Chrome failed to start: was killed.
 (unknown error: DevToolsActivePort file doesn't exist)


Опции хромдрайвера:
....

options.AddArgument("--headless");
options.AddArgument("--disable-dev-shm-usage");
options.AddArgument("--disable-extensions");
options.AddArgument("--enable-file-cookies");
options.AddArgument("--lang=en");
options.AddArgument("--disable-gpu");
options.AddArgument("--ignore-certificate-errors");
options.AddArgument("--no-sandbox");
options.AddArgument("--safebrowsing-disable-download-protection");
options.AddArgument("--disable-impl-side-painting");

options.UnhandledPromptBehavior = UnhandledPromptBehavior.Ignore;
     
return new ChromeDriver(tempFolder, options);
источник

М

Муслим in QA — Автоматизация
какой версии хромдрайвер скачали?
источник

М

Муслим in QA — Автоматизация
у меня была такая проблема когда хром браузер и хромдрайвер были разных версий
источник

М

Муслим in QA — Автоматизация
и как вы указываете путь до chromedriver.exe ?
источник

М

Муслим in QA — Автоматизация
System.setProperty("webdriver.chrome.driver", "src/main/resources/win/chromedriver.exe");
источник

М

Муслим in QA — Автоматизация
либо можно так, браузер скачается один раз в рантайме и след разы будет только проверять его наличие  , пути тоже до него укажет сам
WebDriverManager.chromedriver().driverVersion("85").setup();
источник

T

Tyrion in QA — Автоматизация
драйвер версии  85.0.4183.8700
путь также указан
источник

LY

Lev Yarushin in QA — Автоматизация
Tyrion
Всем привет
ребят, столкнулся с проблемой - не запускаются тесты в хедлесс на винде (хром 85.0.4183.102)
пробовал рекомендуемые опции, но ошибка никуда не уходит
подскажите как это побороть?

Ошибка которую ловлю:
OpenQA.Selenium.WebDriverException : unknown error: Chrome failed to start: was killed.
 (unknown error: DevToolsActivePort file doesn't exist)


Опции хромдрайвера:
....

options.AddArgument("--headless");
options.AddArgument("--disable-dev-shm-usage");
options.AddArgument("--disable-extensions");
options.AddArgument("--enable-file-cookies");
options.AddArgument("--lang=en");
options.AddArgument("--disable-gpu");
options.AddArgument("--ignore-certificate-errors");
options.AddArgument("--no-sandbox");
options.AddArgument("--safebrowsing-disable-download-protection");
options.AddArgument("--disable-impl-side-painting");

options.UnhandledPromptBehavior = UnhandledPromptBehavior.Ignore;
     
return new ChromeDriver(tempFolder, options);
без headless запускается?
источник

T

Tyrion in QA — Автоматизация
да
источник

М

Муслим in QA — Автоматизация
попробуйте headless так добавить
Configuration.headless = true;
источник

LY

Lev Yarushin in QA — Автоматизация
Tyrion
да
А если убрать --no-sandbox?
источник

T

Tyrion in QA — Автоматизация
Lev Yarushin
А если убрать --no-sandbox?
такое же поведение
источник

LY

Lev Yarushin in QA — Автоматизация
Tyrion
такое же поведение
а попробуйте дебаг информацию посмотреть
https://chromedriver.chromium.org/logging
источник

ИК

Игорь Киселев... in QA — Автоматизация
Всем привет! Такой вопрос. Хочу запускать тесты на разных браузерах. В задании сказано, что название браузера должно храниться в файле конфигурации и должен быть реализован класс, который читает файл конфигурации. Я видел реализации, где название браузера хранится в файле testng.xml в качестве параметра. Появился вопрос, кто-нибудь может видел примеры реализации конфигов без testng.xml - не хватает мозгов понять, как из файла конфигурации передавать в тест название браузера.
источник

T

Tyrion in QA — Автоматизация
Lev Yarushin
а попробуйте дебаг информацию посмотреть
https://chromedriver.chromium.org/logging
спасибо за подсказку, посмотрю
источник

S1

Sceptic 1234 in QA — Автоматизация
Игорь Киселев
Всем привет! Такой вопрос. Хочу запускать тесты на разных браузерах. В задании сказано, что название браузера должно храниться в файле конфигурации и должен быть реализован класс, который читает файл конфигурации. Я видел реализации, где название браузера хранится в файле testng.xml в качестве параметра. Появился вопрос, кто-нибудь может видел примеры реализации конфигов без testng.xml - не хватает мозгов понять, как из файла конфигурации передавать в тест название браузера.
в java например можно использовать пропертис для таких целей
источник

MK

Mem Kekovich in QA — Автоматизация
Игорь Киселев
Всем привет! Такой вопрос. Хочу запускать тесты на разных браузерах. В задании сказано, что название браузера должно храниться в файле конфигурации и должен быть реализован класс, который читает файл конфигурации. Я видел реализации, где название браузера хранится в файле testng.xml в качестве параметра. Появился вопрос, кто-нибудь может видел примеры реализации конфигов без testng.xml - не хватает мозгов понять, как из файла конфигурации передавать в тест название браузера.
Ну создайте файл ключ значение и читайте его в проперти или в мапу.
Хоть ямл, хоть жсон, хоть тхт
источник

ИК

Игорь Киселев... in QA — Автоматизация
@nihilist_qwerty @memesismyprofession а как мне эти данные передать в Before Method, там где создаётся конкретный WebDriver?
источник

NV

Nikita Vandyshev in QA — Автоматизация
всем привет!
У меня задача: получит скриншот элемента страница через Selenium. Получилось сделать - все ок, но сталкнулся с проблемой, что если элемент не влазит весь на экран (допустим это какой нибудь граф или дерево элементов) , то на скриншот попадает только видимая часть.
Какие варианты есть,чтобы весь элемент попал на скриншот?
источник

S1

Sceptic 1234 in QA — Автоматизация
через глобал переменные
источник