1) Случай, когда скриншот черным цветом удаленно, а локально нормально, в обоих случаях вы прогоняли тесты с запущенным драйвер-сервером на одной и той же машине?
2) А какие ошибки? Попробуйте прогнать локально на одной и той же машине через RemoteWebdriver, при этом указав не localhost, а IP
3) Теоретически – отличия нет. Практически: настройки безопасности, надежность сетевого соединения, злой антивирус, закрытые порты, ошибки в конфигурации сети… конечно же есть.
и затем нажималась кнопка которая открывает новое окно.
в элементе "trackorFormName" изначально находится текст "TestTrackorForm"
затем он стирается и прописывается заного
так вот при выполнении тестов удаленно в ff это окно просто не открывалось. (может быть кнопка не нажималась не разобрался до конца так как исправил свою ошибку)
стирать значение и писать затем тоже самое это был скопипастенный код.
когда изменил webDriver.findElement(By.name("trackorFormName")).sendKeys("TestTrackorForm");
на webDriver.findElement(By.name("trackorFormName")).sendKeys("TestTrackorFormEdit");
1) При параллельном удаленном выполнении тестов на разных браузерах уже сталкивался с проблемой, когда IE отдавал черный экран. Но видимых причин тому найдено не было. Хотя, скажу сразу, что такое повторялось не для всех сайтов. Т.е. я мог запустить один и тот же тест для снятия скринов с разными линками, и в одном случае был черный экран, в других - нормальный скриншот получался. Сложно сказать тут, чей это косяк - драйвера, либы или самого сайта.
2) Чудес не бывает. Проблема скорее всего в задержках, либо динамически обновляемых контролах. Дописывание окончания к статическому тексту на поиск элемента на странице никак не влияет. Понаблюдайте за вашим неймом в момент редактирования. Если это драг&дроп попап, вполне вероятно, что его нейм динамически изменяется в момент фокуса. В такой ситуации я бы порекомендовал использовать поиск по xpath.
3) Не важно, на чем крутятся хабы / ноды. Главное, чтобы тесты знали, куда обращаться. Я поднимал хаб и на Windows, и на MAC OS, и на Linux, никаких отличий не увидел. Естественно либы и драйвера нужны под соответствующую ОС. Отличие есть в JDK, указанном в system env var, т.к. в зависимости от разрядности, будет запускаться соответствующий инстанс браузера. Это касается ситуаций, когда у вас стоит x64 система. Например, при работе с x64 IE вы не сможете оперировать PDF документами, ибо там отсутствует поддержка соответствующего x64 плагина. Ну еще могу отметить, что на Linux определенно будут проблемы с использованием класса Robot. Помимо того, что он не умеет работать удаленно и в headless env, ему еще не нравится запуск из-под демона. А т.к. у вас вероятней всего хаб / CI настроен в качестве демона, Robot просто не будет работать даже при локальном запуске.
На машине с первой нодой - WinXP, на машине со второй - win server 2008 R2.
На рабочей машине поднимаю хаб и одну ноду. На удаленной - вторую ноду. В консоле грида отображаются две подключенные ноды. При запуске теста запускаются по одному экземпляру браузера на двух нодах, но тест не стартует. В логе эксепшен:
Caused by: org.openqa.selenium.remote.ErrorHandler$UnknownServerException: Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. Firefox console output:
При запуске теста на одном компьютере с поднятыми двумя нодами проблем нету, тест запускается.
Путем экспериментов удалось выяснить, что такая ошибка также наблюдается если перенести проект на другой компьютер и попытаться собрать его maven. Браузер открывается, но после ожидание валит эксепшен. При этом через эклипс запустилось без ошибок.
Похоже на проблему совместимости драйвера с новой версией FF. Попробуйте обновить сервер до 31й версии. У меня с 29й выпадает та же ошибка, что уж говорить о 28й. На 31й нормально пошло.