1

У меня проблема с Selenium WebDriver, Microsoft Team Foundation Server, NUnit и Chrome/ChromeDriver. Я надеюсь, что, возможно, кто-то может предложить некоторые идеи или указать мне в направлении расследования. Прямо сейчас я обманывал эту проблему.Тест WebDriver с использованием Google Chrome зависает при выполнении процесса сборки с использованием TFS/NUnit

Деталь проблемы -

я обнаружил, что мой селен автоматизация тестирования висит, когда тесты вызываются наш автоматизированный процесс сборки (Microsoft Team Foundation Server) с помощью Google Chrome в качестве теста-браузера. По существу TFS строит через MSBuild, а затем вызывает NUnit, который, в свою очередь, выполняет мои тесты Selenium. Я вижу в диспетчере задач Windows (и в журналах сборки), что запускаются процессы nunit-console, nunit-agent, Google Chrome и ChromeDriver, но затем процессы, похоже, просто зависают.

Опять же, это только повторное воспроизведение, когда тест автоматически запускается на нашей машине сборки с использованием Google Chrome в качестве браузера для тестирования. Я проверил, что учетная запись, запускающая TFS, является администратором, и эта проблема не проявляется, когда я использую Firefox в качестве браузера для нашего процесса запуска/сборки автоматизации.

Я написал кучу заявлений отладки в коде и управляется узкой вниз повесьте линий, таких, как это:

IWebElement element =driver.FindElement(By.XPath(strXpath)); 

Значение strXpath для вышеприведенного утверждения заключается в следующем:

//ul[contains(@class,'topnew')] 

Я попытался изменить селектор By для поиска элемента с классом css или Id, такого как этот, но я все еще вижу проблему:

element = driver.FindElement(By.ClassName("topnew")); 

Вот самые последние несколько заявлений в журнале ChromeDriver:

[157.979][FINER]: Waiting for all views to stop loading... 
[216.963][FINE]: Command received (/session/43fb268cae9e2131577d6fdddedb5c7f/refresh 
[216.963][FINER]: Waiting for all views to stop loading.. 

Здесь Программное обеспечение работает на нашей сборки машинно

Selenium version 2.18.0.0 (I have also tried 2.14.0.0) using the .Net binaries (the tests are written in C#) 
Nunit version 2.5.9.10348 
Windows Server 2008 R2 
Chrome version 16.0.912.77 
ChromeDriver.exe version 18.0.995.0 (windows version) 
Microsoft Team Foundation Server 2010 – version 10.0.30319 

В качестве обходного пути я пытался получать MSBuild вызвать Powershell скрипт который затем вызывает NUnit, но проблема все еще сохраняется.

ответ

2

Это bug. Я закончил обертывание вызова с помощью тайм-аута gevent, поэтому, если хромированная решетка блокируется, я могу просто убить ее и перезапустить.