Pull to refresh

Comments 11

Долгое время Java и Python являются наиболее распространенными языками для автоматизации с Selenium, в статье я пытаюсь показать что связка C# и Selenium , тоже имеет право на существование и является очень мощным инструментом.
Инновационные подходы описанные в статье это: Эффективное взаимодействие с веб-элементами, Гибкое управление ожиданиями, Интеграция с фреймворками, Обработка исключений, C# демонстрирует высокую производительность и стабильность.

Этого же самого нельзя добиться на Жабе и Питоне? Вроде можно, жаба так ничем, в этом плане, не уступает. И так, что тут инновационное?

Лично наблюдал несколько лет назад внедрение селениума в проект на C# и даже тогда это не было каким-то хай-теком.

Все что вы написали в конце умеет базовый selenium или selenide из коробки. Их можно связать с чем угодно.

А в чем преимущества?

Я сам программирую на этой связке. Что радует, то это скорость обработки. Допустим спарсить миллион товаров на c# с отслеживанием дубликатов (а интернет сайты имеют обыкновение перемешивать товар в каталоге) на c# удобнее.

Но с другой стороны как язык компилируемый c#, как я понимаю, уступит в отладке интерпретируемому питону.

Каждый инструмент предназначен для своих целей, тяжело закручивать болт отвёрткой, у каждого языка свои преимущества и недостатки при решении тех или иных задач, одни более подходят - другие менее , область применения С# все больше расширяется и его мощность при этом не страдает.

Работа с Selenium должна напоминать Playwright - все эти костыли по внезапному исчезновению элемента (Привет Angular + DevExtreme + StaleElementReferenceException) должны быть убраны из глаз тестировщика.

Тестировщик должен оперировать только неким локатором (неким XPath) и действиями над ним. Попробую в ближайшее время написать как мы переезжали на такой формат.

Полностью согласен, у нас каждому элементу был задан свой ID и работа с элементами заиграла новыми красками)))

Но этому нужно посвещать отдельную статью.

Ну это смотря что тестировать. Например, как Вам тестирование капчи? :)

Не самое простое занятие, но в C# существуют библиотеки, которые можно использовать для работы с капчей. Вот некоторые из них:

  1. DeathByCaptcha: Это популярный сервис, предоставляющий API для разгадывания капчи. Они также предоставляют библиотеку для C#, которая упрощает взаимодействие с их сервисом.

  2. TwoCaptcha: Подобно DeathByCaptcha, это ещё один популярный сервис и API для разгадывания капчи. Они также предоставляют библиотеку для C#.

  3. Anticaptcha: Это ещё один сервис и API для разгадывания капчи. Они также имеют библиотеку для C#.

  4. Speech recognition библиотеки: Если капча представлена в виде аудиофайла с голосовой задачей, можно использовать библиотеки для распознавания речи, такие как Microsoft Speech SDK.

  5. Автоматизация браузера: Если капча встроена на веб-странице, вы можете использовать Selenium WebDriver для взаимодействия с капчей, заполняя её вручную или анализируя результаты.

Sign up to leave a comment.

Articles