Пишем первый автотест с Selenium Webdriver и Java. Часть 2

ВАМ ПОНРАВИТСЯ

39 Комментариев

  1. Елена:

    Спасибо большое за внятное объяснение, но я новичок и не во всем разобралась. Подскажите, я пишу автотест для Chrom и на этапе:
    driver.get(«https://mail.ukr.net/desktop/login»);
    у меня get подсвечивается красным, в чем проблема, как исправить?

    • astest:

      Добрый день. Для того чтобы попытаться разобраться в чем причина, мне необходимо увидеть ваш код целиком. А еще лучше будет увидеть скрин-шот окна вашей среды разработки с кодом. И тогда я думаю смогу вам помочь. Можете выслать скрин-шот на мой э-мейл aleksey.smiyan@gmail.com

  2. Андрей:

    Спасибо за статью! 3-я часть будет? Было бы интересно почитать статью в подобном формате с пошаговой инструкций по созданию тест сьютов и их прогону с описанием всяких нюансов.

    • astest:

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

  3. макс:

    у меня тест не выполнился
    «java.lang.IllegalStateException: The driver executable is a directory: D:\Work_Space\Driver\Chrome»
    И не совсем понял этот момент «Если у вас не установлен драйвер для Chrome»

  4. Михаил:

    Спасибо, продолжайте писать такие хорошие статьи!!!

  5. Мишаня:

    Очень хорошая статья, побольше бы таких!
    p.s. для остальных ребят, если будете делать этот тест, то id поля Loggin — «id-1», a id для Password — «id-2» (ну по крайней мере, у меня с такими правками заработало)

    • astest:

      Спасибо за отзыв. Статья была написана уже давно, и за это время на ukrnet успел обновиться дизайн. Id элементов также изменились. Это одна из причин, почему тесты иногда выходят из строя.

  6. Роман:

    Автору спасибо за отличный пример.
    Маленькая заметка от себя. УкрНет поменял айди элементов и это сказалось на выполенни теста.
    Для всех кто будет использовать : внимательно следите за ошибками возможно надо будет поменять айди для полей пароля и имейла!!!

  7. Павел:

    Мужик,я обычно, никогда не пишу отзывы,но ты действительной помог)
    Я жду ещё таких пояснений ,удачи тебе)

    • astest:

      Спасибо за отзыв.
      Постарался описать все моменты, с которыми у самого были сложности, когда начинал заниматься автоматизацией.

  8. Илья:

    У меня почему-то не хочет проводить @AfterClass при том что пишет, что тест успешно пройден.

    • astest:

      Добрый день.
      Нужно увидеть ваш код, чтобы попытаться установить причину.
      А также скажите, как вы определили, что @AfterClass не был выполнен?

  9. Foltest:

    Очень полезная информация, большое спасибо, для новичков то что надо

  10. Ал:

    На Mac OS не работает кнопка старта теста. Находится в состоянии disabled.

  11. Владислав:

    Здравствуйте!
    Пожалуйста, помогите разобраться почему происходит failed:

    java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing

    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at org.junit.internal.builders.JUnit4Builder.runnerForClass(JUnit4Builder.java:10)
    at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
    at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:33)
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:49)
    at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
    Caused by: java.lang.ClassNotFoundException: org.hamcrest.SelfDescribing
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    … 21 more

    Process finished with exit code -1

  12. Наталия:

    Добрый день, как писать в Intellij IDEA, тесты для одного проекта, для разных браузеров. Или это нужно делать разные проекты?

  13. Вячеслав:

    Присоединяюсь к отзывам, автор молодец! Читал бы и читал такие внятные и четкие описания

  14. Vitalik:

    Только начинаю изучение и это просто сверх полезная и структурированная инфа для меня. Спасибо и ждём статьи по TestNG ))

  15. Сергей:

    Спасибо! Очень помогли!

  16. Рус:

    Скачал драйвер и сослался на него, но все равно такая ошибка, это как то связано с тем что у меня винда 64 а не 32 как драйвер? и есть ли для 64 битной винды?
    java.lang.IllegalStateException: The driver executable does not exist: D:\users\r.merikanov\chromedriver

  17. Катерина:

    Здравствуйте!
    Огромное спасибо, за проделанную работу! Хотела бы уточнить по поводу проверки настроек Intellij IDEA:
    1. «Language level»: В выпадающем списке выбираю вмеcто «5.0», версию «8.0» и нажимаю «Ok» — у Вас в выпадающем списке, версия «8.0» последняя или нет? Так как у меня последняя версия «9».
    2. «Java Compiler» — у меня последней версией стоит «9».
    Выбор версий от чего зависит? Или Вы выбирали самую последнюю версию на время написания статьи?

    • astest:

      Добрый день.
      Вы можете ввести в терминале команду java -version. Какую версию выведет в ответе, ту и можно выбирать. Думаю, что 8 версии на данном этапе вполне достаточно.

  18. Роман:

    Отличная статья ! Понравился Ваш подход , простыми словами объяснили , что и как . Хотелось бы увидеть ещё одну часть с выполнением более сложных тестов , ещё раз спасибо !

  19. Ivan:

    и снова спасибо!)
    отправился на поиск статьи по TestNG. 😉
    было бы классно добавлять в конец статьи ссылку на следующую, плиз. ))

  20. Добрый день, спасибо за подробное описание. Столкнулась со следующей проблемой: код перестает работать на шаге поиска элемента логина. Пробовала разные локаторы не получается. Можете подсказать в чем дело?

  21. Алексей:

    Добрый день.
    Такой вопрос, если мы пишем независимые друг от друга тесты. Нужно объеденить их в одну группу (например тесты у которых будет выполняться логирование и переход на одну и туже страницу. Например отдельно тест добавление, тест поиска по текущей странице, тест валидации ввода). Если один тест не прошёл, второй не должен падать, при этом при выполнении каждого теста, мы не должны каждый раз заново логиниться и переходить на необходимую страницу.
    Как лучше реализовать это что бы избежать зависимости тестов и избыточности?

Добавить комментарий для Мишаня Отменить ответ

Ваш e-mail не будет опубликован. Обязательные поля помечены *