Невозможно запустить ChromeDriver в среде CI - PullRequest
1 голос
/ 09 марта 2020

Я использую Selenium с ChromeDriver in. NET Core. Все тесты работают нормально локально, однако в TeamCity дают сбой со следующей ошибкой:

Starting ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882}) on port 24272
Only local connections are allowed.
Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.

...

OneTimeSetUp: OpenQA.Selenium.WebDriverException : Cannot start the driver service on http://localhost:24272/

После завершения тестов chromedriver.exe не прекращается. В журнале событий Windows или в дополнительных подробностях в журналах сборки ничего нет, поэтому я сейчас в темноте.

Я использую следующие аргументы, некоторые добавлены из отчаяния:

var options = new ChromeOptions();

options.AddArgument("--headless");
options.AddArgument("--remote-debugging-port=9222");
options.AddArgument("--no-sandbox");
options.AddArgument("--no-first-run");

// See https://bugs.chromium.org/p/chromium/issues/detail?id=737678
options.AddArgument("--disable-gpu");

Driver = new ChromeDriver(options);

Интересно, что порт удаленной отладки! = Порт при первой ошибке. Не уверен, что это что-то значит. Документация Chromedriver предполагает, что опции добавляются без начального --, но удаление этого, похоже, не имеет никакого эффекта.

ПОКАЗАТЬ, что агент TeamCity работает как локальный Windows служебная учетная запись на Windows Server 2008 R2 (да, я знаю).

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