Олег, спасибо большое за информацию в таких деталях. Будет очень круто, если ты ещё запишешь видео с автотестами в которых подробно объясняешь работу Java.
Спасибо, Олех. Отличный видео-урок! Я бы тебе ещё посоветовал открыть ещё один канал для тех, кто не может успокоиться и заснуть. Твой голос просто как снотворное и успокоительное в одном флаконе!)
было бы интересно видео про обзор всех основных методов selenide. и про ожидания начиная от загрузки страницы и элементов на ней до загрузки файлов например
возвращаем объект страницы в методе, на которую будет происходить переход в результате выполнения этого метода, конгениально. на простом примере разобрали построение PO
12:05 Начиная с версии Selenide 6.17.0 метод driverManagerEnabled отсутствует. Коммент ниже про этот метод следовало бы закрепить. Кстати где смотреть информацию по истории изменений?
Здравствуйте, будет ли новое видео на примере нового Selenide версии 6.17.0 и выше, где используется SeleniumManager вместо WebDriverManager? Или расскажите вкратце как заменить одно на другое?
Добрый день! Каждый тест-кейс должен содержать шаги, тестовые данные и ожидание. Во всех роликах про автоматизацию тестирования вижу, что ожидание шага как-то упускают. Например, мы вводим значение в поле "Поиск", следовательно ожидание должно быть "поле заполнено". Почему вы не проверяете что оно заполнено?
Привет, как вариант можно получить все кликабельные элементы и из них достать значение href атрибута. Далее поместить все элементы в список или сет, после чего через цикл вызвать метод Selenide.open("URL");
@@threadqa Как вариант. Я делал следующим образом: Создавал элемент private static final LINKS = "//ul//li/a" - согласно DOM по нему находит 122 ссылки, которые есть на странице. public Element Collections getAllLinks(){ return $$x(LINKS); Но вот дальше заступорился и не понимаю как дальше сделать. Именно вернуть валидный список, и кликнуть по любой из 122 ссылок...
подскажите, плиз, как пофиксить: Делаю по мануалу, но intellij IDEA в "Configuration.driverManagerEnabled = true;"рассматривает driverManagerEnabled как символ переменную, а не как метод из библиотеки. . java: cannot find symbol symbol: variable driverManagerEnabled location: class com.codeborne.selenide.Configuration. Зависимость при этом добавлена com.codeborne selenide 6.18.0 в чем может быть проблема?
Подскажите, пожалуйста, я выставил Configuration.headless = true; но у меня все равно браузер запускается с GUI. Перезагрузка и Ivalidate Caches не помогли
Смотрел, делал, а потом понял, что это совсем не с нуля. Таким "с нуля" можно отпугнуть навсегда. Тут описывается подход, когда требуется написать 100-200 тестов и для этого раскладывается всё по классам и распихивается по папкам. Для начала, это не нужно. Для начала нужно показать минимум, который требуется для написания теста. Не надо наворачивать так густо классы. Надо показать, как это работает без этого, показать как обнаруживать сложные элементы, рассмотреть все возможные варианты взаимодействия с элементами. Вот это будет "с нуля". А раскладывать всё по полочкам уже надо учить тогда, когда уже будет опыт написания не одного десятка тестов.
Зачем так много ответвлений? Можно сначала показать - потом объяснить - потом показать? Keep it seemple)) Не нужно усложнять, что и так просто. Дополнения можно вставить в конце или делать их сжатыми во время основного прохода. Теряется нить событий во время просмотра...
Сомнительный способ открывать браузер, чтобы потом ещё думать о его закрытии. У селенида есть другой вариант и селенид сам умеет закрывать браузер после прохождения тестов и потоков
Все делал как в видео и получил ошибку java.lang.NoSuchMethodError: 'void org.openqa.selenium.remote.DesiredCapabilities.setJavascriptEnabled(boolean)'
Спасибо за видео.Но есть маленькое замечание.Аннотации @Before и @After при запуске теста падают с ошибкой 255.Нужно их заменить на @BefireEach и @AfterEach.
Не видел нигде такого детального и ясного объяснения. Так держать, молодец
Нигде не видел такого полного обьяснения и рассказа. Подход искренний! Спасибо
Классные уроки, именно этого не хватает на просторах интернета, реальные кейсы разбираешь. Лайк и подписка!!!
После селенида голый селениум выглядит как палка копалка. Спасибо за детальный обзор!
Олег, как же теперь просто стало погружаться, как раз используем selenide в работе, спасибо!
ты молодец! хорошо + с желание + с вариантами оптимизации рассказываешь!
Очень круто! Хорошее объяснение! Ждём еще
У тебя получается объяснять. Не останавливайся :)
Очень классные уроки с максимально подробным рассказом что, для чего и зачем используется. И те же фреймворки используете, что и я, вообще супер😀
Хочется просто сказать огромное человеческое спасибо, очень понятная подача информации, очень приятный тембр голоса.
Лучший! спасибо!
Спасибо, очень понравилось, для новичков это видео-рай ❤
Чувак твой стиль выделяется.Лайк
Отличное видео! Хотелось бы ещё что-нибудь по автоматизации API с REST Assured.
спасибо) скоро выйдет про REST Assured видео
Олег, спасибо большое за информацию в таких деталях.
Будет очень круто, если ты ещё запишешь видео с автотестами в которых подробно объясняешь работу Java.
Сниму видео про это)
Спасибо, Олех. Отличный видео-урок! Я бы тебе ещё посоветовал открыть ещё один канал для тех, кто не может успокоиться и заснуть. Твой голос просто как снотворное и успокоительное в одном флаконе!)
Спасибо. Ждем больше)
Лайкнул, просьба, когда пишешь код, увеличивай шрифт, что б окно кода на весь экран было.
было бы интересно видео про обзор всех основных методов selenide. и про ожидания начиная от загрузки страницы и элементов на ней до загрузки файлов например
Олёг, спасибо за видео ,продолжай,у тебя отлично получается,хотелось бы увидеть тесты на Cucumbere!
Спасибо, обязательно сделаю видео)
Спасибо, информативно, прям насладился хорошо сделанной работой. спасибо за труд!
Посмотрел это видео, после просмотра более новых твоих, на удивление было легко понимать, но все равно полезные штуки находятся, ты профи)
Молодец👏👏👏
Спасибо большое, очень познавательно) и еще - у вас очень приятный тембр голоса))
лучший разбор, спасибо
Мужик ты крут был на платных курсах такой практики там не было. Хотелось бы увидеть твой курс по автоматизации.
Ну и наверное моё непрофессиональное предложение многие поддержат: не хватает тайм поинтов при такой продолжительности ролика, для большего удобства)
Таймбрейки есть в описании к видео)
P.S обновил, чтобы в плеере было разделение на части
@@threadqa Вот это я и имел ввиду)
это слишком круто!! спасибо
Спасибо за Ваш труд! Коммент в поддержку канала
Большое спасибо!
Довольно интересный кейс :)
суперспасибо! то, что искала
Привет. Спасибо за видео! В selenide, webdriver manager встроен сразу. Отдельно импортировать еге не обязательно.
2 часа не могу понять в чем дело
Спасибо за видео!
лайк, подписка!!! давай ещё что-нибудь по селениду!!!
возвращаем объект страницы в методе, на которую будет происходить переход в результате выполнения этого метода, конгениально. на простом примере разобрали построение PO
Начал писать проект на selenium, теперь всё переделываю на selenid))))))))) Надо было сразу с этого видео начинать)
12:05 Начиная с версии Selenide 6.17.0 метод driverManagerEnabled отсутствует. Коммент ниже про этот метод следовало бы закрепить. Кстати где смотреть информацию по истории изменений?
Зачем WebDriverManager, и зачем J unit? Там же все из коробки идет.
Очень крутое и познавательное видео.
Где взять верные зависимости для автотестов ?
Здравствуйте, будет ли новое видео на примере нового Selenide версии 6.17.0 и выше, где используется SeleniumManager вместо WebDriverManager? Или расскажите вкратце как заменить одно на другое?
Чел, спасибо огромное за ролики) ОЧЕНЬ хорошая подача, ты молодец, даже такой даун как я всё понял)
Добрый день!
Каждый тест-кейс должен содержать шаги, тестовые данные и ожидание. Во всех роликах про автоматизацию тестирования вижу, что ожидание шага как-то упускают. Например, мы вводим значение в поле "Поиск", следовательно ожидание должно быть "поле заполнено". Почему вы не проверяете что оно заполнено?
Пушка гонка
Спасибо!
А вы не знаете случайно, можно ли как-то подсветить синтаксис xpath в локаторах, кроме как временной инъекцией?
Почему, когда устанавливаешь Configuration.headless = false; браузер все равно запускается?
Там нужно headless = true, чтобы браузер не запускался
Хорошее видео о Селенид.
Вопрос:
Как произвести сбор всех ссылок, которые есть на странице, а после сбора, кликнуть на любую из ссылок.??
Привет, как вариант можно получить все кликабельные элементы и из них достать значение href атрибута. Далее поместить все элементы в список или сет, после чего через цикл вызвать метод Selenide.open("URL");
@@threadqa Как вариант.
Я делал следующим образом:
Создавал элемент private static final LINKS = "//ul//li/a" - согласно DOM по нему находит 122 ссылки, которые есть на странице.
public Element Collections getAllLinks(){
return $$x(LINKS);
Но вот дальше заступорился и не понимаю как дальше сделать. Именно вернуть валидный список, и кликнуть по любой из 122 ссылок...
@@cinemaSage_1 напиши мне в вк vk.com/olehking
@@threadqa через vk не напишу точно. Т.к. нет аккаунта там. Может скайп, телеграмм?
@@cinemaSage_1 телега t.me/penolegrus
подскажите, плиз, как пофиксить:
Делаю по мануалу, но intellij IDEA в "Configuration.driverManagerEnabled = true;"рассматривает driverManagerEnabled как символ переменную, а не как метод из библиотеки.
. java: cannot find symbol
symbol: variable driverManagerEnabled
location: class com.codeborne.selenide.Configuration.
Зависимость при этом добавлена
com.codeborne
selenide
6.18.0
в чем может быть проблема?
привет, в новой версии селенида этот функционал убрали и щас он по стандарту там зашит, то есть не нужно прописывать эту настройку
спасибо!@@threadqa
@@threadqa закрепить бы это в описании, я как новичок час потратил на выяснение))
Подскажите, пожалуйста, я выставил Configuration.headless = true; но у меня все равно браузер запускается с GUI. Перезагрузка и Ivalidate Caches не помогли
привет, скорее всего импортирована не та библиотека, нужно чтобы была вот такая
import com.codeborne.selenide.Configuration;
необязательно брать хпас вручную можно использовать плагин он тоже правильно возьмет (селекторсхаб)
Иду по шагам 1 в 1 (но это не точно) с видео, глупый вопрос, почему при завершении каждого рана браузер закрывается?
привет, нужно добавить строку Configuration.holdBrowserOpen = true;
в метод setUp в классе BaseTest, после этого закрываться не будет
@@threadqa Оперативно, спасибо тебе)
А если у меня нет таких зависимостей которые установлены в вашем IDE то как мне их установить и где взять,запишите урок пожалуйста
maven central
подскажите как правильно и де взять все эти данные в РОМ??? Или их просто перепечатать можн?
Подскажите пожалуйста, я занимаюсь самообучением и не могу понять. Спасибо!!!
@@ЕвгенийМихайлов-ч5н загуглить название библиотеки + "maven" , там будет xml , которую нужно скопировать и вставить в соответствующий тег
На каком jdk проект подскажите плз?
Jdk 8 :)
@@threadqa ок,пасиб)
@@threadqa Разве не 15?
@@acidhouzewest3068 сейчас в проекте Java 8
в гитхаб новое обновление сделал))
лайк, но обрати внимание , что твое лицо перекрывает какой-то код временами))
знаю) в следующих видео уже норм будет)
Было в коде 7 строк, сократили до одной, но потом поняли, что не удобно читать и снова сделали 7 строк. Хмм...
почему так мало лайков?
Selenide по умолчанию иницилизирует Хром, можно и не писать всё это в Байс тесте
Как обидно что я не могу прислать тест кейс свой( Сайт
не публичный
Смотрел, делал, а потом понял, что это совсем не с нуля. Таким "с нуля" можно отпугнуть навсегда. Тут описывается подход, когда требуется написать 100-200 тестов и для этого раскладывается всё по классам и распихивается по папкам. Для начала, это не нужно. Для начала нужно показать минимум, который требуется для написания теста. Не надо наворачивать так густо классы. Надо показать, как это работает без этого, показать как обнаруживать сложные элементы, рассмотреть все возможные варианты взаимодействия с элементами. Вот это будет "с нуля". А раскладывать всё по полочкам уже надо учить тогда, когда уже будет опыт написания не одного десятка тестов.
селенид это всего лишь технология
Зачем так много ответвлений? Можно сначала показать - потом объяснить - потом показать? Keep it seemple))
Не нужно усложнять, что и так просто.
Дополнения можно вставить в конце или делать их сжатыми во время основного прохода.
Теряется нить событий во время просмотра...
Я скопировал xpath кнопки поиска и смог ввести текст
Сомнительный способ открывать браузер, чтобы потом ещё думать о его закрытии. У селенида есть другой вариант и селенид сам умеет закрывать браузер после прохождения тестов и потоков
Плюс результат зафеленного ассерта нечитабельный. Можно добавить вывод текстового сообщения.
Все делал как в видео и получил ошибку java.lang.NoSuchMethodError: 'void org.openqa.selenium.remote.DesiredCapabilities.setJavascriptEnabled(boolean)'
Спасибо за видео.Но есть маленькое замечание.Аннотации @Before и @After при запуске теста падают с ошибкой 255.Нужно их заменить на @BefireEach и @AfterEach.
А зачем нам писать в сетапе WebdriverManager.chromedriver.setup() , если и без него всё работает и даже быстрее в 10 раз ?
Красавчик, спасибо большое.