t.me/atinfo_chat Telegram группа по автоматизации тестирования

Почему не находит элемент при запуске теста с ChromeDriver

Теги: #<Tag:0x00007f748a60c970> #<Tag:0x00007f748a60c830> #<Tag:0x00007f748a60c678>

Написала тест, при запуске с FirefoxDriver все отлично проходит. При запуске с ChromeDriver - браузер стартует и сразу же падает тест с ошибкой NullPointerException. В чем может быть проблема?

В чем угодно, ошибка же неспецифичная.
Хотя бы стек вызовов приложили.

Только сначала проверьте: есть ли chromedriver и прописан ли он в PATH. Потому что судя по описанию, весьма вероятно, что просто драйвер не подложен, т.к. с FF он и не нужен был.

Главная проблема в том, что некоторые считают, что комьюнити состоит из экстрасенсов. И прочитав подобный пост, у остальных перед глазами должны моментально выстраиваться блоки кода, которые тут же в голове можно отладить и найти root cause.

П.С. Когда код научимся атачить, а? :wink:

1 Симпатия

ChromeDriver прописала так:

@BeforeClass
    public void setUp() {
        System.setProperty("webdriver.chrome.driver", "E:\\chromedriver.exe");
        WebDriver driver = new ChromeDriver();

Драйвер инициализируется в локальную переменную. Из метода тоже ничего не возвращается. Чего ожидаем увидеть? Вполне логичный NPE.

Хочу чтобы тест отработал как и с FirefoxDriver))) Подскажите как тогда правильно подключить ChromeDriver. В интернете нашла только так, как я подключила.

Тут дело не в драйвере, а в основах программирования. Рекомендую для начала почитать о разнице между local и instance variables. Затем посмотреть в ваш код и попробовать понять, какая область видимости у локальной переменной driver, и смогут ли другие части вашего приложения к ней обратиться? В конце концов, вы поймете, почему переменная, которая действительно используется в остальном коде, осталась неинициализированной. :wink:

Спасибо! Оказалось все так просто. Просто убрала WebDriver и все заработало!
Еще раз спасибо за Вашу работу)