atesting.ru Блог 100 самых популярных вопросов и ответов на интервью для Advanced Selenium

100 самых популярных вопросов и ответов на интервью для Advanced Selenium

100 самых популярных продвинутых вопросов и ответов на собеседовании по селену

Готовы ли вы к успеху на предстоящем собеседовании по селену? Разве не было бы замечательно, если бы вы точно знали, какие вопросы будет задавать вам менеджер по найму на следующем собеседовании по автоматизации программирования на Selenium?

Мы также затронули другие темы, связанные с вами, а именно: Не упустите возможность проверить.

  • Вопросы на собеседовании TestNG
  • Вопросы на собеседовании по Selenium Automation
  • Основные вопросы на собеседовании по Java для тестировщиков Selenium Automation
  • Вопросы для собеседований по Python для тестировщиков Selenium
  • Почему вы выбрали тестирование программного обеспечения в качестве своей карьеры
  • Объясните свою платформу автоматизации тестирования Selenium

Основные & amp; Расширенные вопросы на собеседовании по Selenium WebDriver:

Независимо от того, являетесь ли вы опытным или новичком, мы охватили все уровни на основе запросов, которые мы получили от наших читателей. Здесь мы рассмотрели вопросы на собеседовании по Selenium, задаваемые в компаниях.

1. Что такое автоматическое тестирование?

Автоматическое тестирование — это процесс тестирования программного обеспечения или приложения с использованием инструмента автоматического тестирования для поиска дефектов. В этом процессе выполнение сценариев тестирования и генерация результатов выполняются автоматически средствами автоматизации. Это необходимо, когда у нас огромное количество регрессионных тестов. Наиболее популярными инструментами для автоматизации тестирования являются HP QTP/UFT, Selenium WebDriver и т. Д.

2. Каковы преимущества автоматического тестирования?

Это один из распространенных вопросов на собеседовании при любом задании по автоматическому тестированию.

  1. Экономит время и деньги. Автоматическое тестирование выполняется быстрее.
  2. Возможность повторного использования кода. Создайте один раз и выполните несколько раз с минимальным обслуживанием или без него.
  3. Легкая отчетность. Он генерирует автоматические отчеты после выполнения теста.
  4. Легко для тестирования совместимости. Он обеспечивает параллельное выполнение в сочетании с различными ОС и средами браузера.
  5. Недорогое обслуживание. В долгосрочной перспективе это дешевле по сравнению с ручным тестированием.
  6. Автоматическое тестирование более надежно.
  7. Автоматическое тестирование более мощное и универсальное. Инструменты автоматизации позволяют нам интегрироваться с инструментами кроссбраузерного тестирования, Jenkins, Github и т. Д.
  8. В основном он используется для регрессионного тестирования. Поддерживает выполнение повторяющихся тестовых примеров.
  9. Минимальное ручное вмешательство. Сценарии тестирования можно запускать в автоматическом режиме.
  10. Максимальное покрытие. Это помогает увеличить охват тестированием.

3. Каковы проблемы и ограничения Selenium WebDriver?

Как мы все знаем, Selenium WebDriver — это инструмент, который автоматизирует браузер для имитации реальных действий пользователя в сети. Selenium — это бесплатный инструмент для тестирования с открытым исходным кодом. Некоторые из проблем с Selenium WebDriver заключаются в следующем.

  1. Мы не можем протестировать приложение Windows
  2. Мы не можем тестировать мобильные приложения
  3. Ограниченная отчетность
  4. Обработка динамических элементов
  5. Обработка загрузки страницы
  6. Обработка всплывающих окон
  7. Обработка капчи

Прочтите подробное объяснение проблем и ограничений Selenium WebDriver

4. Какие типы тестов вы автоматизировали?

Наша основная цель — автоматизировать тестовые сценарии для выполнения Регрессионное тестирование, Smoke & amp; Проверка на вменяемость. Иногда, основываясь на проекте и оценке времени тестирования, мы сосредотачиваемся на сквозном тестировании.

5. Сколько тестовых примеров вы автоматизировали в день?

Это один из сложных вопросов для собеседований, связанных с Selenium.

На самом деле, это зависит от сложности и длины сценария тестового примера. Я автоматизировал 2-5 тестовых сценариев в день, когда сложность ограничена. Иногда всего 1 или меньше тестовых сценариев в день, когда сложность высока.

6. Что такое структура ?

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

  • Платформа тестирования на основе данных
  • На основе ключевых слов Платформа тестирования
  • Платформа гибридного тестирования
  • Структура, управляемая поведением

Подробное объяснение: типы фреймворков

7. Какие типы тестовых примеров следует автоматизировать?

Типы тестовых примеров для автоматизации:

  • Тестовые примеры на основе данных.
  • Тестирование случаи с более высокой сложностью
  • Тестовый пример с большим количеством обновлений базы данных
  • Скорость выполнения теста высокая.
  • Дымовые/критические тесты
  • Тесты с несколько комбинаций
  • Графики тестовых случаев
  • Более высокое время ручного выполнения

Прочтите подробное объяснение типов автоматизируемых тестовых случаев здесь

8. Какие типы тестовых случаев не следует автоматизировать?

Типы тестовых примеров, которые не следует автоматизировать,

  • Субъективная проверка.
  • Новинка Функциональные возможности
  • Стратегическое развитие
  • Пользовательский опыт
  • Сложная функциональность
  • Контроль качества
  • Низкая рентабельность инвестиций
  • Тестирование установки и настройки

Подробное описание типов тестовых случаев, которые нельзя автоматизировать, здесь

9. Каковы преимущества платформы автоматизации тестирования?

  1. Возможность повторного использования кода.
  2. Простая отчетность.
  3. Низкая стоимость техническое обслуживание.
  4. Максимальный охват
  5. Минимальное ручное вмешательство

10. Вы создали какой-либо фреймворк?

Если вы новичок: Вы можете сказать: «Нет, у меня не было возможности создать фреймворк с нуля. Я использовал уже имеющийся фреймворк. Мой вклад в основном заключается в создании тестовых примеров с использованием существующей среды ».

Если вы новичок, но хорошо разбираетесь в создании среды: вы можно сказать: «Да, я участвовал в разработке фреймворка вместе с другими тестировщиками автоматизации в своей компании».

Если вы опытный тестировщик: Вы можете сказать: «Я внес свой вклад в разработку фреймворка». или Вы можете сказать: «Да, я создал фреймворк с нуля. В моей предыдущей компании не было процесса автоматизации. Я разработал фреймворк с нуля ».

11. Как бы вы объяснили фреймворк автоматизации тестирования Selenium в интервью?

Здесь мы четко объяснили каждый компонент фреймворка. Прочтите этот пост, чтобы узнать больше о том, как объяснить интервьюеру фреймворк автоматизации тестирования на селен.

12. Почему вы предпочитаете Selenium Automation Tool?

Я предпочитаю Selenium Automation Tool, потому что некоторые из преимуществ Selenium для автоматизации тестирования —

  • Бесплатный и открытый исходный код — это бесплатный инструмент с открытым исходным кодом. Нет необходимости выделять бюджет для этого инструмента.
  • Помощь — иметь большую базу пользователей и помогающие сообщества.
  • Кроссбраузерная совместимость — Он работает практически во всех популярных браузерах, таких как Chrome, Firefox, Internet Explorer и Safari.
  • Кросс-платформенная совместимость — Он работает на таких платформах, как Windows, Linux, Mac.
  • Несколько языков программирования — Он поддерживает такие языки программирования, как Java, Phyton, Perl, Php, C #, Ruby и т. Д. ,
  • Параллельное выполнение — Selenium Grid поддерживает параллельное выполнение сценариев Selenium.
  • Непрерывная интеграция — Мы можем добиться выполнения ночью, используя Дженкинс.

13. Что такое селен?

Selenium — это бесплатный (бесплатный) набор автоматизированного тестирования с открытым исходным кодом для тестирования веб-приложений. Он поддерживает разные платформы и браузеры. Он приобрел большую популярность с точки зрения автоматизированного тестирования через Интернет и составляет большую конкуренцию известному коммерческому инструменту HP QTP (Quick Test Professional), также известному как HP UFT (Unified Functional Testing).

Selenium — это набор различных программных инструментов. У каждого инструмента свой подход к поддержке автоматизированного веб-тестирования.

Он состоит из четырех компонентов, а именно:

  1. Selenium IDE (интегрированная среда разработки Selenium)
  2. Selenium RC (удаленное управление Selenium)
  3. Selenium WebDriver
  4. Selenium Grid

14. Что такое Selenium IDE?

Selenium IDE (интегрированная среда разработки) — это плагин для Firefox. Это самый простой фреймворк в Selenium Suite. Это позволяет нам записывать и воспроизводить сценарии. Несмотря на то, что мы можем создавать сценарии с использованием Selenium IDE, нам необходимо использовать Selenium RC или Selenium WebDriver для написания более сложных и надежных тестовых примеров.

15. Что такое Selenese?

Selenese — это язык, который используется для написания тестовых скриптов в Selenium IDE.

16. Какой единственный браузер поддерживает Selenium IDE?

Firefox и Chrome. Однако, поскольку Selenium IDE поддерживается сообществом, регулярные обновления и совместимость с новыми версиями браузеров не могут быть гарантированы.

Еще в 2017 году, когда он больше не работал с последней версией Firefox, пользователи перешли на Katalon Recorder. Он поддерживает те же команды, сценарии расширений, тестирование на основе данных и расширенную платформу отчетов о тестах с TestOps.

Ознакомьтесь с лучшими расширениями Chrome для тестировщиков программного обеспечения

17. Что такое Selenium RC?

Selenium RC AKA Selenium Remote control/Selenium 1. Selenium Remote Control был основным проектом Selenium в течение долгого времени, прежде чем слияние WebDriver привело к появлению Selenium 2. Selenium 1 все еще активно поддерживается (в режиме обслуживания). Он полагается на JavaScript для автоматизации. Он поддерживает Java, Javascript, Ruby, PHP, Python, Perl и C #. Он поддерживает почти все существующие браузеры.

18. Что такое Selenium WebDriver?

Selenium WebDriver AKA Selenium 2 — это среда автоматизации браузера, которая принимает команды и отправляет их в браузер. Это реализуется через драйвер для конкретного браузера. Он управляет браузером, напрямую связываясь с ним. Selenium WebDriver поддерживает Java, C #, PHP, Python, Perl, Ruby.

Изучите архитектуру Selenium WebDriver

19. В чем разница между Selenium 3 и Selenium 4?

Все мы знаем, что Selenium 4 был выпущен в качестве стабильной версии 13 октября 2021 года. Итак, в этом посте мы рассмотрели Selenium 4 Вопросы для собеседования & amp; Ответы. Сначала давайте посмотрим на разницу между Selenium 3 и Selenium 4.

Selenium 3 — Проводной протокол JSON использовался для связи между API-интерфейсами Selenium Webdriver и собственными API-интерфейсами браузера. Все запросы и ответы, передаваемые по протоколу, были закодированы & amp; расшифровано.

Selenium 4 — Соответствует стандартному протоколу W3C. Благодаря этому запросу и ответу, передаваемому по протоколу, не требуется API кодирования и декодирования.

Ознакомьтесь с новыми функциями Selenium 4

20. Что такое Selenium Grid?

Selenium Grid — это инструмент, используемый вместе с Selenium RC для параллельного запуска тестов на разных машинах в разных браузерах. То есть одновременное выполнение нескольких тестов на разных машинах с разными браузерами и операционными системами.

Проще говоря, он используется для одновременного распределения выполнения вашего теста на нескольких платформах и средах.

21. Когда вы используете Selenium Grid?

Selenium Grid можно использовать для одновременного выполнения одинаковых или разных тестовых скриптов на нескольких платформах и браузерах, чтобы обеспечить выполнение распределенного теста

22. В чем преимущества Selenium Grid?

Он позволяет запускать тестовые примеры параллельно, тем самым экономя время выполнения теста.
Он позволяет проводить тестирование в нескольких браузерах.
Это позволяет нам выполнять тестовые примеры на мультиплатформенности

23. Что такое хаб в Selenium Grid?

Хаб — это сервер или центральная точка, которая контролирует выполнение тестов на разных машинах.

24. Что такое узел в Selenium Grid?

Узел — это компьютер, подключенный к концентратору. В Selenium Grid может быть несколько узлов.

25. Какие типы API-интерфейсов WebDriver доступны в Selenium?

  • Драйвер Firefox
  • Драйвер Gecko
  • Драйвер InternetExplorer
  • Драйвер Chrome
  • Драйвер HTMLUnit
  • Драйвер Opera
  • Драйвер Safari
  • Драйвер Android
  • Драйвер iPhone
  • EventFiringWebDriver

26. Какая реализация WebDriver считается самой быстрой?

Самая быстрая реализация WebDriver — это HTMLUnitDriver. Это потому, что HTMLUnitDriver не выполняет тесты в браузере. Запуск браузера и выполнение тестовых примеров заняли больше времени по сравнению с запуском скриптов без браузера. HTMLUnitDriver использовал простой механизм HTTP-запроса-ответа для выполнения тестового примера.

Узнайте больше о том, как проводить тестирование браузера без использования компьютера с помощью Selenium WebDriver

27. Какие языки программирования поддерживает Selenium WebDiver?

  • Java
  • C #
  • < li> Python

  • Ruby
  • Perl
  • PHP

28. Какой язык не поддерживает селен?

Selenium поддерживает все основные языки программирования, такие как Java, C #, Perl, Python, Ruby, PHP, Scala и Groovy. На сегодняшний день другие несовместимы.

29. Какие операционные системы поддерживает Selenium WebDriver?

  • Windows
  • Linux
  • Mac OS X
  • iOS
  • Android

30. Какие типы тестирования могут поддерживаться Selenium?

Типы тестирования, которые могут поддерживаться Selenium, следующие:

  • Функциональное тестирование
  • Регрессионное тестирование
  • Повторное тестирование
  • Приемочное тестирование
  • Сквозное тестирование
  • Дымовое тестирование
  • Тестирование работоспособности
  • Адаптивное тестирование
  • Кроссбраузерное тестирование
  • Тестирование пользовательского интерфейса
  • Интеграционное тестирование

31. Сколько параметров могут иметь команды selenium как минимум?

Есть четыре параметра, которые вы должны передать в Selenium:

  • Host
  • Номер порта
  • Браузер
  • URL-адрес

Хост: Это параметр, который мы используем для привязки Selenium к определенному IP. Обычно мы запускаем тесты на селен на нашей локальной машине, поэтому значение будет «localhost». Вы можете указать IP-адрес вместо localhost.

java -jar & lt; selenium server standalone jar name & gt; -host & lt; Ваш IP-адрес & gt;

Номер порта: порт TCP/IP, который используется для подключения тестов на селен к концентратору сетки селена. Концентратор портов по умолчанию — 4444.
java -jar & lt; selenium server standalone jar name & gt; -role hub -port 4444

Убедитесь, что никакое другое приложение в вашей системе не использует этот порт. Вы можете столкнуться с таким исключением, как Exception в потоке «main» java.net.BindException: Selenium уже работает на порту 4444. Или какая-то другая служба работает.

В этом случае вы можете завершить работу другого процесса, который использует порт 4444, или вы можете указать Selenium-Grid использовать другой порт для своего концентратора. Используйте параметр -port для изменения порта, используемого концентратором.

java -jar & lt; selenium server standalone jar name & gt; -role hub -port 4441

Браузер: Чтобы передать браузер, который должен выполнять наши сценарии selenium

URL: Для передачи URL приложения

32. Какие платформы с открытым исходным кодом поддерживаются Selenium WebDriver?

  • JUnit
  • TestNG

Прочтите: полное руководство по TestNG

33. Какие локаторы доступны в Selenium?

В Selenium WebDriver есть 8 различных типов локаторов:

  1. ID — Практический пример
  2. ClassName — Практический пример
  3. Name — Практический пример
  4. TagName — Практический пример
  5. LinkText — Практический пример
  6. PartialLinkText — Практический пример
  7. XPath — Практический пример
  8. CSS Selector — Практический пример

Нажмите здесь, чтобы просмотреть подробный пост по локаторам.

34. Что такое XPath?

XPath используется для поиска элементов. Используя XPath, мы могли перемещаться по элементам и атрибутам в XML-документе, чтобы находить веб-элементы, такие как текстовое поле, кнопку, флажок, изображение и т. Д., На веб-странице.

Узнайте, как написать динамический XPath

35. Когда вы используете эти локаторы ID, Name, XPath или CSS Selector?

ID & amp; Локаторы имени будут использоваться при наличии уникальных идентификаторов & amp; уникальные имена, доступные на веб-странице.
Селектор CSS может использоваться для производительности и когда ID & amp; Локаторы имен не уникальны.
XPath используется, когда предпочтительных локаторов нет.

36. В чем разница между «/» и «//»?

Одинарная косая черта «/» — Одинарная косая черта используется для создания XPath с абсолютным путем, т. Е. XPath будет создан для начала выделения с узла документа/начального узла.

Двойная косая черта «//» — Двойная косая черта используется для создания XPath с относительным путем, т.е. XPath будет создан для начала выделения из любого места в документе.

37. В чем разница между абсолютным путем и относительным путем?

Абсолютный XPath начинается с корневого узла и заканчивается узлом желаемого дочернего элемента. Он начинается с верхнего узла HTML и заканчивается узлом ввода. Он начинается с одинарной косой черты (/), как показано ниже.

1 /html/body/div [3]/div [1]/form/table/tbody/tr [1]/td/input

Относительный XPath начинается с любого узла между HTML-страницей и текущим узлом элемента (последним узлом элемента). Он начинается с двойной косой черты (//), как показано ниже.

1 //ввод [@id = & # 39; email & # 39;]

38. В чем разница между Assert и Verify в Selenium?

Assert: Проще говоря, если условие assert истинно, то программный элемент управления выполнит следующий шаг теста, но если условие ложно, выполнение остановится, и следующий шаг теста не будет выполнен.

Проверить: Проще говоря, остановки не будет при выполнении теста, даже если условие проверки истинно или ложно.

Прочтите это подробное сообщение об утверждении и проверке с практическим примером здесь, подробное сообщение проверьте по ссылке ниже.

39. Что такое Soft Assert и Hard Assert в Selenium?

Soft Assert: Soft Assert собирает ошибки во время @Test Soft Assert не генерирует исключение при сбое утверждения и продолжится со следующего шага после оператора assert.

Hard Assert: Hard Assert выдает AssertException сразу же, когда оператор assert терпит неудачу, и набор тестов продолжается со следующим @Test

Подробное сообщение: Soft Assert

40. В чем разница между методами setSpeed ​​() и sleep ()?

Оба метода sleep () и setSpeed ​​() используются для задержки скорости выполнения.

setSpeed ​​(): он устанавливает скорость, при которой будет применяться время задержки перед каждой операцией Selenium.

Пример: setSpeed ​​(«5000») — ждет 5 секунд

sleep (): Он настраивает ожидание только один раз при вызове в нашем скрипте Selenium.

Пример: sleep (5000) — Он ждет 5 секунд

Примечание: метод setSpeed ​​применим к Selenium IDE и Selenium RC. Мы не можем использовать setSpeed ​​в Selenium WebDriver.

41. Какие точки проверки доступны в Selenium?

В Selenium IDE мы используем команды Selenese Verify и Assert в качестве точек проверки
В Selenium WebDriver нет встроенных функций для точек проверки. Это полностью зависит от нашего стиля кодирования. некоторые из точек проверки:

  • Чтобы проверить заголовок страницы
  • Проверить наличие определенного текста
  • Проверить наличие определенного элемента (текстовое поле, кнопка , раскрывающийся список и т. д.)

42. Как запустить браузер с помощью Selenium WebDriver?

WebDriver — это интерфейс. Мы создаем объект необходимого класса драйвера, такого как FirefoxDriver, ChromeDriver, InternetExplorerDriver и т. Д.

Для запуска драйвера Firefox:
Драйвер WebDriver = new FirefoxDriver ();

Примечание: Если вы используете geckodriver с Selenium, вы должны перейти на Selenium 3.3. Здесь мы должны установить свойство следующим образом

1 Система .setProperty (& # 34; webdriver.gecko.driver & # 34; & # 34; D: \ Selenium Environment \ Drivers \ geckodriver.exe & # 34;);

Для запуска драйвера Chrome:
WebDriver driver = new ChromeDriver ();

Для запуска драйвера Internet Explorer:
Драйвер WebDriver = новый InternetExplorerDriver ();

Чтобы запустить драйвер Safari:
драйвер WebDriver = new SafariDriver ();

43. FirefoxDriver — это класс или интерфейс?

FirefoxDriver — это класс Java, реализующий интерфейс WebDriver .

44. Что такое супер-интерфейс WebDriver?

SearchContext действует как супер-интерфейс Web-драйвера.

45. Объясните строку кода драйвер Webdriver = new FirefoxDriver (); ?

1 Webdriver драйвер = новый FirefoxDriver ();

' WebDriver '- это интерфейс, и мы создаем объект типа WebDriver, создающий экземпляр объекта класса FirefoxDriver.

Подробнее о том, почему драйвер WebDriver = new FirefoxDriver ();

46 . Мы создаем ссылочную переменную «драйвер» типа WebDriver, как показано ниже. Какова цель этого?

12345 Драйвер WebDriver = новый FirefoxDriver (); вместо создания драйвера FirefoxDriver = new FirefoxDriver ();

Если мы создадим драйвер ссылочной переменной типа WebDriver, то мы сможем использовать ту же переменную драйвера для работы с любым браузером по нашему выбору, например IEDriver, SafariDriver и т. Д.

47. Что такое WebElement selenium?

WebElement в Selenium представляет собой HTML-элемент. По сути, он представляет собой элемент DOM в документе HTML.

48. С какими исключениями вы столкнулись в Selenium WebDriver?

Некоторые из исключений, с которыми я столкнулся в моем текущем проекте:

  1. ElementNotVisibleException
  2. StaleElementReferenceException

Исключение элемента невидимости:

Это исключение будет выдано при попытке найти конкретный элемент на веб-странице, который в настоящее время не отображается, хотя и присутствует в DOM. Также иногда, если вы пытаетесь найти элемент с xpath, который связан с двумя или более элементами.

Исключение ссылки на устаревший элемент:

Исключение ссылки на устаревший элемент возникает в одном из двух случаев, первый из которых встречается чаще, чем второй.

Две причины ссылки на устаревший элемент:

  1. Элемент имеет был полностью удален.
  2. Элемент больше не прикреплен к DOM.

Мы сталкиваемся с этим исключением ссылки устаревшего элемента, когда элемент, с которым мы взаимодействуем, уничтожается, а затем создается заново. Когда это происходит, ссылка на элемент в DOM становится устаревшей. Следовательно, мы не можем получить ссылку на элемент.

Некоторые другие исключения, с которыми мы обычно сталкиваемся, следующие:

  • WebDriverException
  • IllegalStateException
  • TimeoutException
  • NoAlertPresentException
  • NoSuchWindowException
  • NoSuchElementException

49. Как обрабатывать STALEELEMENTREFERENCEEXCEPTION?

Прежде чем приступить к рассмотрению того, как обрабатывать исключение ссылки устаревшего элемента с помощью объектной модели страницы. Давайте сначала посмотрим, что такое исключение ссылки на устаревший элемент.

Несвежий — значит старый, разложившийся, уже не свежий. Устаревший элемент означает старый элемент или более недоступный элемент. Предположим, что существует элемент, который находится на веб-странице, на которую ссылается WebElement в WebDriver. Если DOM изменяется, WebElement устаревает. Если мы пытаемся взаимодействовать с застрявшим элементом, возникает исключение StaleElementReferenceException.

Здесь мы подробно описали решения для обработки исключения StaleElementReferenceException.

50. Какие типы ожидания доступны в Selenium WebDriver?

В Selenium мы можем видеть три типа ожидания, такие как неявные ожидания, явные ожидания и плавные ожидания.

  • Неявное ожидание — нажмите, чтобы просмотреть подробное сообщение.
  • Явное ожидание — нажмите, чтобы просмотреть подробное сообщение.
  • Свободное ожидание — нажмите для просмотра подробного сообщения

51. Что такое неявное ожидание в Selenium WebDriver?

Неявное ожидание сообщает WebDriver'у о необходимости ожидания в течение определенного времени, прежде чем он выдаст исключение. Как только мы установим время, WebDriver будет ждать элемента в соответствии с установленным нами временем, прежде чем он выдаст исключение. Значение по умолчанию — 0 (ноль). Нам нужно установить время ожидания, чтобы WebDriver ждал необходимое время.

Практический пример

52. Что такое WebDriver Wait в Selenium WebDriver?

WebDriverWait применяется к определенному элементу с определенным ожидаемым условием и временем . Это ожидание применяется только к указанному элементу. Это ожидание также может вызвать исключение, если элемент не найден.

Практический пример

53. Что такое Fluent Wait в Selenium WebDriver?

FluentWait может определить максимальное время ожидания определенного условия и частоту, с которой нужно проверять условие перед выдачей исключения « ElementNotVisibleException ».

Практический пример

54. Что произойдет, если вы смешиваете неявное ожидание и явное ожидание в сценарии Selenium?

Согласно официальной документации Selenium, рекомендуется не смешивать и неявное ожидание, и явное ожидание. Их смешение может вызвать непредсказуемое время ожидания.

Неявное ожидание определяется в коде только один раз. Он останется неизменным во всем экземпляре объекта драйвера.

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

Явное ожидание перезапишет неявное ожидание там, где применяется явное ожидание. Итак, явное ожидание получает первое предпочтение, а затем неявное ожидание.

55. Что произойдет, если вы смешаете и Thread.Sleep, и WebDriver Waits в сценарии Selenium?

Метод Thread.sleep () можно использовать для приостановки выполнения на указанное время в миллисекундах

Если мы используем ожидание WebDriver вместе с методом Thread.sleep (), тогда webdriver будет задерживать выполнение в течение указанного времени, а затем будет следовать другому ожиданию. Если смешать оба ожидания, время выполнения теста увеличится.

56. Как войти на любой сайт, если он показывает всплывающее окно аутентификации для имени пользователя и пароля?

Для этого мы передаем имя пользователя и пароль с URL-адресом

12 http: //имя пользователя: [email protected] http: //myUserName: [email protected]

57. Как ввести текст в текстовое поле с помощью Selenium WebDriver?

С помощью метода sendKeys ()

123 Драйвер WebDriver = новый FirefoxDriver (); driver.get (& # 34; https: //www.gmail.com"); driver.findElement (By.xpath (& # 34; xpath & # 34;)). SendKeys (& # 34; Веб-сайт с материалами для тестирования программного обеспечения & # 34;);

58. Как ввести текст в текстовое поле, не вызывая sendKeys ()?

123456 //Для инициализации js-объектаJavascriptExecutor JS = (JavascriptExecutor) webdriver; //Для ввода имени пользователяJS.executeScript (& # 34; document.getElementById (& # 39; User & # 39;). value = & # 39; SoftwareTestingMaterial.com & # 39; & # 34;); //Для ввода пароля JS.executeScript (& # 34; document.getElementById (& # 39; Pass & # 39;). Value = & # 39; tester & # 39; & # 34;);

Изучите JavaScriptExecutor в Selenium с примерами

59. Как очистить текст в текстовом поле с помощью Selenium WebDriver?

С помощью метода clear ()

1234 Драйвер WebDriver = new FirefoxDriver (); driver.get (& # 34; https: //www.gmail.com");driver.findElement(By.xpath("xpath_of_element1")).sendKeys(" Веб-сайт с материалами для тестирования программного обеспечения & # 34;); driver.findElement ( По.xpath (& # 34; xpath_of_element1 & # 34;)). Clear ();

60. Как получить текст веб-элемента?

Используя метод getText ()

12345678910111213141516 package softwareTestingMaterial; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.testng.annotations.Test; общедоступный класс TestTestTest {@Test public void testmethod () {System.setProperty (& # 34; webdriver.chrome.driver & # 34 ;, & # 34; D: \ Selenium Environment \ Drivers \ chromedriver.exe & # 34;); Драйвер WebDriver = новый ChromeDriver (); driver.get (& # 34; https: //www.google.com"); String availableText = driver.findElement (By.xpath (& # 34; //* [@ id = & # 39; gbw & # 39;]/div/div/div [1]/div [1]/a & # 34; )). getText (); System.out.println (& # 34; Доступный текст: & # 34; + availableText); }}

61. Как получить значение атрибута с помощью Selenium WebDriver?

Используя getAttribute (value);

Он возвращает значение атрибута, переданного в качестве параметра.

HTML:

1 & lt; input name = & # 34; nameSelenium & # 34; value = & # 34; valueSelenium & # 34; & gt; SoftwareTestingMaterial & lt;/input & gt;

Код Selenium:

123 String attributeValue = driver.findElement (By.name (& # 34; nameSelenium & # 34;)). getAttribute (& # 34; value & # 34;); System.out. println (& # 34; Доступное значение атрибута: & # 34; + attributeValue); Вывод: valueSelenium

62. Как щелкнуть гиперссылку с помощью Selenium WebDriver?

Мы используем метод click () в Selenium, чтобы щелкнуть гиперссылку

1 driver.findElement (By.linkText («Веб-сайт с материалами для тестирования программного обеспечения»)). click ();

63. Как отправить форму с помощью Selenium WebDriver?

Мы используем метод submit для элемента для отправки формы

1 driver.findElement (By.id (& # 34; form_1 & # 34;)). submit ();

В качестве альтернативы вы можете использовать метод click для элемента, который формирует отправку

64. Как нажать клавишу ENTER в текстовом поле в Selenium WebDriver?

Чтобы нажать клавишу ENTER с помощью Selenium WebDriver, нам нужно использовать Selenium Enum Keys с его константой ENTER.

< tr class = "crayon-row">
1 driver.findElement (By.xpath (& # 34; xpath & # 34;)) .sendKeys (Keys.ENTER);

65. Как приостановить выполнение теста на 5 секунд в определенной точке?

Используя java.lang.Thread.sleep (длинные миллисекунды) , мы могли бы приостановить выполнение на определенное время. Чтобы сделать паузу в 5 секунд, нам нужно передать параметр как 5000 (5 секунд)

1 Thread.sleep (5000)

66. Требуется ли Selenium Server для запуска скриптов Selenium WebDriver?

Когда мы распространяем наши скрипты Selenium WebDriver для выполнения с использованием Selenium Grid, нам необходимо использовать Selenium Server.

67. Что произойдет, если я запущу эту команду. driver.get («www.softwaretestingmaterial.com»);

Если URL-адрес не содержит префикса http или https, создается исключение. Итак, нам нужно передать протокол HTTP в методе driver.get ().

1 driver.get (& # 34; https: //www.softwaretestingmaterial.com");

68. Какая альтернатива методу driver.get () для открытия URL-адреса с помощью Selenium WebDriver?

Альтернативный метод driver.get («url») — это driver.navigate.to («url»)

69. В чем разница между driver.get () и driver.navigate.to («url») ?

driver.get (): для открытия URL-адреса и ожидания загрузки всей страницы
driver.navigate.to () : Чтобы перейти по URL-адресу, и он не будет ждать, пока загрузится вся страница

70. Могу ли я перемещаться вперед и назад в браузере в Selenium WebDriver?

Мы используем интерфейс Navigate, чтобы перемещаться вперед и назад в браузере. В нем есть методы для перемещения назад, вперед, а также для обновления страницы.

driver.navigate (). Forward (); — для перехода к следующей веб-странице со ссылкой в историю браузера
driver.navigate (). back (); — возвращает на предыдущую веб-страницу со ссылкой на историю браузера
driver.navigate () .refresh (); — обновить текущую веб-страницу, тем самым перезагрузив все веб-элементы
driver.navigate (). To («url»); — для запуска нового окна веб-браузера и перехода по указанному URL-адресу

71. Какие существуют типы команд навигации?

См. Вопрос выше (Могу ли я перемещаться вперед и назад в браузере)

72. Как получить URL-адрес текущей страницы в Selenium?

Чтобы получить URL-адрес текущей страницы, мы используем getCurrentURL ()

1 driver.getCurrentUrl ();

73. Как мы можем развернуть окно браузера в Selenium?

Чтобы развернуть окно браузера в селене, мы используем метод maximize () . Этот метод максимизирует текущее окно, если оно еще не развернуто

1 driver.manage (). window (). maximize ();

74. Как удалить файлы cookie в Selenium?

Для удаления файлов cookie мы используем метод deleteAllCookies ()

1 driver.manage (). deleteAllCookies ();

75. Как можно обновить браузер с помощью Selenium WebDriver?

Есть несколько способов обновить страницу в селене

  • с помощью driver.navigate () .refresh () , как указано в вопросе 45
  • Использование driver.get («URL») для текущего URL-адреса или использование driver.getCurrentUrl ()
  • Использование driver.navigate (). To («URL») для текущего URL или driver.navigate (). To (driver.getCurrentUrl ());
  • Использование sendKeys (Keys.F5) в любом текстовом поле на веб-страница

76. В чем разница между driver.getWindowHandle () и driver.getWindowHandles () в Selenium WebDriver?

driver.getWindowHandle () — возвращает дескриптор текущая страница (уникальный идентификатор)
driver.getWindowHandles () — возвращает набор дескрипторов всех доступных страниц.

77 В чем разница между driver.close () и driver. quit ()?

Назначение этих двух методов (driver.close и driver.quit) почти одинаково. Оба позволяют закрыть браузер, но все же есть разница.

driver.close (): Чтобы закрыть текущий экземпляр WebDriver
driver.quit (): Чтобы закрыть все открытые экземпляры WebDriver

78. В чем разница между командами driver.findElement () и driver.findElements ()?

Разница между driver.findElement () и driver.findElements () command is-

  • findElement () возвращает единственный WebElement (найденный первым) на основе локатора, переданного в качестве параметра. В то время как findElements () возвращает список WebElements, все из которых удовлетворяют переданному значению локатора.
  • Синтаксис findElement () —
    WebElement textbox = driver.findElement (By.id («textBoxLocator»));
    Синтаксис findElements () —
    Список & lt; WebElement & gt; elements = element.findElements (By.id («value»));
  • Еще одно различие между ними — если элемент не найден, findElement () выдает исключение NoSuchElementException, тогда как findElements () возвращает список из 0 элементы.

79. В чем разница между MaxSessions и S. Свойства MaxInstances в Selenium Grid?

MaxInstances это нет. экземпляров браузера той же версии браузера, которая может работать на удаленном компьютере.

Давайте посмотрим на пример ниже:

12 — браузер browserName = InternetExplorer, version = 6, maxInstances = 2, platform = WINDOWS-browserName = firefox, version = 11, maxInstances = 2, platform = WINDOWS

Согласно приведенному выше примеру, это позволит нам запустить 4 экземпляра IE и Firefox одновременно (параллельно) на удаленном компьютере.

MaxSession говорит, сколько браузеров, независимо от типа & amp; версия, может работать параллельно на удаленном компьютере.

Он заменяет параметр «MaxInstances».

Если maxSession = 1, то будет работать не более одного браузера. Если maxSession = 2, то любая из приведенных ниже комбинаций может выполняться одновременно независимо от того, какие MaxInstances мы определили.
2 Internet Explorer
2 Firefox
1 Internet Explorer + 1 Firefox

80. Как узнать, отображается ли элемент на веб-странице?

WebDriver предоставляет пользователю следующие методы проверки видимости веб-элементов. Этими веб-элементами могут быть кнопки, выпадающие поля, флажки, переключатели, метки и т. Д.

  1. isDisplayed ()
    1 логическое elePresent = driver.findElement (By.xpath (& # 34; xpath & # 34;)). isDisplayed ();
  2. isSelected ()
    1 логическое eleSelected = driver.findElement (By.xpath (& # 34; xpath & # 34;)). isSelected ();
  3. isEnabled ()
    1 логическое eleEnabled = driver.findElement (By.xpath (& # 34; xpath & # 34;)). isEnabled ();

81. Как выбрать значение в раскрывающемся списке?

Используя Select class

12345 WebElement mySelectElement = driver.findElement (By.name (& # 34; dropdown & # 34;)); Select dropdown = new Select (mySelectElement); dropdown.selectByVisibleText (Текст); dropdown.selectByIndex (Index); dropdown.selectByValue (Value);

Практический пример:

82. Как сделать снимок экрана в Selenium WebDriver?

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

Некоторые из сценариев, в которых нам может потребоваться сделать снимок экрана с помощью Selenium WebDriver:

i. Проблемы с приложением
ii. Ошибка утверждения
iii. Сложность поиска Webelements на веб-странице
iv. Тайм-аут для поиска Webelements на веб-странице

Selenium предоставляет интерфейс под названием TakesScreenshot , в котором есть метод getScreenShotAs , который можно использовать для создания снимка экрана тестируемого приложения.

В Selenium 3, мы можем столкнуться с некоторыми проблемами при создании снимков экрана. Для преодоления воспользуемся утилитой aShot. Щелкните ссылки ниже, чтобы просмотреть сообщения, относящиеся к обычному способу создания снимка экрана и снимка экрана с помощью утилиты aShot.

Сделайте снимок экрана с помощью Selenium WebDriver

Снимок экрана на всю страницу с помощью утилиты aShot

Снимок экрана неудачных тестовых случаев

83 Как навести указатель мыши на веб-элемент с помощью WebDriver?

С помощью класса Actions

12345 WebElement ele = driver.findElement (By.xpath (& # 34; xpath & # 34;)); //Создать объект «действие» действия classActions action = new Actions (driver); //Наведите указатель мыши на элементaction.moveToElement (ele) .perform ();

Практический пример.

84. Как мы можем обрабатывать веб-всплывающие окна или оповещения в Selenium?

Чтобы обрабатывать веб-оповещения или всплывающие окна, нам нужно переключиться в окно оповещения и вызвать Selenium WebDriver Alert API методы.

dismiss (): для нажатия кнопки «Отмена».
accept (): для нажатия кнопки «ОК».
getText (): для получения текста, который присутствует на Предупреждение.
sendKeys (): для ввода текста в поле предупреждения.

Практический пример.

85. Как мы можем обрабатывать всплывающие окна на основе окон?

Selenium не поддерживает приложения на основе Windows. Это инструмент автоматизации тестирования, который поддерживает только тестирование веб-приложений. Мы могли обрабатывать всплывающие окна на основе окон в Selenium, используя некоторые сторонние инструменты, такие как AutoIT, класс роботов и т. Д.

86. Как обрабатывать скрытые элементы в Selenium WebDriver?

Мы можем обрабатывать скрытые элементы с помощью исполнителя javaScript

1 (JavascriptExecutor (драйвер)). ExecuteScript (& # 34; document.getElementsByClassName (ElementLocator) .click (); & # 34;);

< сильный> 87. Как найти неработающие ссылки на странице с помощью Selenium WebDriver?

Практический пример.

88. Как найти более одного веб-элемента в списке?

123456789101112 //Для хранения listList & lt; WebElement & gt; eleList = driver.findElements (By.xpath (& # 34; xpath & # 34;)); //Получить размер списка int listSize = eleList.size (); //for loopfor (int i = 0; i & lt; listSize; i ++) {//Нажимаем на каждую ссылку links.get (i) .click (); //Возвращаемся к предыдущей странице, где хранятся ссылки driver.navigate (). Back ();}

89. Как читать переменную JavaScript в Selenium WebDriver?

С помощью JavascriptExecutor

12345 //Для инициализации объекта JS. JavascriptExecutor JS = (JavascriptExecutor) webdriver; //Чтобы получить заголовок сайта: String title = (String) JS.executeScript (& # 34; return document.title & # 34;); System.out.println (& # 34; Заголовок веб-страницы: & # 34; + title );

90. Что такое JavaScriptExecutor и в каких случаях JavaScriptExecutor поможет в автоматизации Selenium?

Обычно мы щелкаем элемент с помощью метода click () в Selenium.

Например:

1 driver.findElement (By.id (& # 34; Id Value & # 34;)). click ();

Иногда веб-элементы управления не реагируют хорошо против команд селена, и мы можем столкнуться с проблемами с указанным выше утверждением (click ()). Чтобы преодолеть такую ​​ситуацию, мы используем интерфейс JavaScriptExecutor.

Он предоставляет механизм для выполнения Javascript через драйвер Selenium. Он предоставляет «сценарий выполнения» & amp; Методы executeAsyncScript для запуска JavaScript в контексте текущего выбранного фрейма или окна.

Нет необходимости писать отдельный сценарий для выполнения JavaScript в браузере с использованием сценария Selenium WebDriver. Мы просто используем предопределенный интерфейс под названием «Java Script Executor». Нам нужно импортировать пакет JavascriptExecutor в скрипт.

Пакет:

1 import org.openqa.selenium.JavascriptExecutor;

Синтаксис:

12 Драйвер JavascriptExecutor js = (JavascriptExecutor); js.executeScript (сценарий, аргументы);

Script — JavaScript для выполнить
Аргументы — Аргументы сценария (необязательно). Может быть пустым.
Возвращает — одно из значений Boolean, Long, String, List, WebElement или null.

Давайте посмотрим, какие сценарии мы можем обработать используя этот интерфейс:

1. Ввод текста в Selenium WebDriver без использования метода sendKeys ()
2. Чтобы нажать кнопку в Selenium WebDriver с помощью JavaScript
3. Для обработки флажка
4. Чтобы сгенерировать всплывающее окно с предупреждением в селене
5. Чтобы обновить окно браузера с помощью Javascript
6. Чтобы получить внутренний текст всей веб-страницы в Selenium
7. Получить заголовок нашей веб-страницы
8. Чтобы получить домен
9. Чтобы получить URL-адрес веб-страницы
10. Выполнение прокрутки в приложении с помощью Selenium
11. Чтобы щелкнуть Подменю, которое отображается только при наведении курсора мыши на Меню
12. Для перехода на другую страницу с помощью Javascript

91. Как вы читаете тестовые данные из Excel?

Тестовые данные можно эффективно читать из Excel с помощью JXL или POI API. POI API имеет много преимуществ по сравнению с JXL.
Щелкните здесь, чтобы увидеть практический пример использования Apache POI.

92. Можно ли автоматизировать ввод кода капчи с помощью Selenium?

Нет, автоматизировать считывание капчи и штрих-кода невозможно.

93. Можно ли использовать Selenium для тестирования API для отдыха или тестирования веб-сервисов?

Простой ответ: Selenium не является инструментом для тестирования API. Он автоматизирует веб-браузеры. Rest API & amp; Веб-службы не содержат пользовательского интерфейса. Поэтому мы не можем автоматизировать использование Selenium.

Не пропустите: вопросы на собеседовании по тестированию API

94. Как обрабатывать вызовы Ajax в Selenium WebDriver?

Обработка вызовов AJAX — одна из распространенных проблем при использовании Selenium WebDriver. Мы не могли бы знать, когда будет завершен вызов AJAX и страница будет обновлена. В этом посте мы увидим, как обрабатывать вызовы AJAX с помощью Selenium.

AJAX означает асинхронный JavaScript и XML. AJAX позволяет веб-странице получать небольшие объемы данных с сервера без перезагрузки всей страницы. AJAX отправляет HTTP-запросы от клиента к серверу, а затем обрабатывает ответ сервера без перезагрузки всей страницы. Для обработки элементов управления AJAX команды ожидания могут не работать. Просто потому, что сама страница не обновляется.

Когда вы нажимаете кнопку отправки, необходимая информация может отображаться на веб-странице без обновления браузера. Иногда загрузка может занять секунду, а иногда и больше. Мы не контролируем время загрузки. Наилучший подход для обработки таких ситуаций в selenium — использовать динамическое ожидание (т.е. WebDriverWait в сочетании с ExpectedCondition)

Вот некоторые из доступных методов:

1 . titleIs () — Ожидаемое условие ожидает страницы с определенным заголовком.

1 wait.until (ExpectedConditions.titleIs («Сделка дня»));

2. elementToBeClickable () — ожидаемое условие ожидает, когда элемент станет активным, т.е. он должен присутствовать/отображаться/видимым на экране, а также быть включенным.

1 wait.until (ExpectedConditions.elementToBeClickable (By.xpath (& # 34; xpath & # 34;)));

3. alertIsPresent () — ожидаемое условие ожидает появления окна предупреждения.

1 wait.until (ExpectedConditions.alertIsPresent ())! = null);

4. textToBePresentInElement () — ожидаемое условие ожидает элемента, имеющего определенный строковый шаблон.

1 wait.until (ExpectedConditions.textToBePresentInElement (By.id (« title '»),« Текст, который нужно найти »));

95. Перечислите несколько сценариев, которые нельзя автоматизировать с помощью Selenium WebDriver?

1. Сравнение растровых изображений невозможно с помощью Selenium WebDriver
2. Автоматизация Captcha невозможна с помощью Selenium WebDriver
3. Мы не можем прочитать штрих-код с помощью Selenium WebDriver

96. Что такое репозиторий объектов в Selenium WebDriver?

Репозиторий объектов используется для хранения значений локатора элементов в централизованном месте вместо их жесткого кодирования в сценариях. Мы создаем файл свойств ( .properties ) для хранения всех локаторов элементов, и эти файлы свойств действуют как репозиторий объектов в Selenium WebDriver.

97. Как вы создаете репозиторий объектов в своем проекте?

В QTP существует концепция репозитория объектов. Когда пользователь записывает тест, объекты и их свойства по умолчанию фиксируются в репозитории объектов. QTP использует этот репозиторий объектов для воспроизведения сценариев. Переходя к Selenium, нет концепции репозитория объектов по умолчанию. Это не означает, что в Selenium нет репозитория объектов. Несмотря на то, что стандартного нет, мы могли бы создать свой собственный. В Selenium мы называем объекты локаторами (такими как ID, Имя, Имя класса, Имя тега, Текст ссылки, Текст частичной ссылки, XPath и CSS). Репозиторий объектов — это набор объектов. Один из способов создания репозитория объектов — поместить все локаторы в отдельный файл (т.е. файл свойств). Но лучше всего использовать объектную модель страницы. В шаблоне проектирования объектной модели страницы каждая веб-страница представлена ​​как класс. Все объекты, относящиеся к определенной странице веб-приложения, хранятся в классе.

98. Что такое объектная модель страницы в Selenium?

Объектная модель страницы — это шаблон проектирования, который стал популярным в Selenium Test Automation. Это широко используемый шаблон проектирования в Selenium для улучшения обслуживания тестов и уменьшения дублирования кода. Объектная модель страницы (POM) может использоваться в любой структуре, такой как модульная, управляемая данными, управляемая ключевыми словами, гибридная структура и т. Д. Объект страницы — это объектно-ориентированный класс, который служит интерфейсом для страницы вашего приложения. Тест (AUT). Затем тесты используют методы этого класса объекта страницы всякий раз, когда им нужно взаимодействовать с пользовательским интерфейсом (UI) этой страницы. Преимущество заключается в том, что при изменении пользовательского интерфейса для страницы не нужно менять сами тесты, нужно изменять только код внутри объекта страницы. Впоследствии все изменения для поддержки этого нового пользовательского интерфейса размещены в одном месте.

99. Что такое фабрика страниц?

Мы видели, что «объектная модель страницы» — это способ представления приложения в тестовой среде. Для каждой «страницы» в приложении мы создаем объект страницы для ссылки на «страницу», тогда как «фабрика страниц» является одним из способов реализации «объектной модели страницы».

100. В чем разница между объектной моделью страницы (POM) и фабрикой страниц?

Объект страницы — это класс, который представляет веб-страницу и содержит функции и элементы.
Фабрика страниц — это способ инициализировать веб-элементы, с которыми вы хотите взаимодействовать в объекте страницы, когда вы создаете его экземпляр.

101. Каковы преимущества платформы объектной модели страницы?

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

Ремонтопригодность кода — Существует четкое разделение между тестовым кодом и кодом страницы, таким как локаторы и макет, что становится очень простым в сопровождении кода. Код изменяется только в классах объектов страницы, когда происходит изменение пользовательского интерфейса. Это улучшает обслуживание тестов и уменьшает дублирование кода.

Репозиторий объектов — каждая страница будет определена как класс java. Все поля на странице будут определены в интерфейсе как члены. Затем класс реализует интерфейс.

Прочтите подробное объяснение в инструментах непрерывного тестирования

118. Как выполнить тестирование базы данных в Selenium?

Как мы все знаем, Selenium WebDriver — это инструмент для автоматизации пользовательского интерфейса. Мы могли взаимодействовать с браузером только с помощью Selenium WebDriver.

Иногда мы можем столкнуться с ситуацией, когда нужно получить данные из базы данных или изменить (обновить/удалить) данные из базы данных. Если мы планируем автоматизировать что-либо за пределами браузера, тогда нам нужно использовать другие инструменты для достижения нашей задачи. Чтобы установить соединение с базой данных и поработать с ней, нам нужно использовать драйвер JDBC API.

API Java Database Connectivity (JDBC) обеспечивает универсальный доступ к данным из языка программирования Java. Используя JDBC API, вы можете получить доступ практически к любому источнику данных, от реляционных баз данных до электронных таблиц и плоских файлов. Он позволяет пользователю подключаться и взаимодействовать с базой данных и извлекать данные на основе запросов, которые мы используем в сценарии автоматизации. JDBC — это API уровня SQL, который позволяет нам выполнять операторы SQL. Он создает связь между языком программирования Java и базой данных.

Используя драйвер JDBC, мы могли бы сделать следующее

i. Установите соединение с базой данных
II. Отправка SQL-запросов в базу данных
iii. Обработайте результаты

119. Как удалить файлы cookie браузера с помощью драйвера Selenium Web?

1 driver.Manage (). Cookies.DeleteAllCookies ();

Вопросы для интервью с TestNG:

Здесь мы рассмотрели несколько важных вопросов для интервью с TestNG. Если вы хотите узнать больше вопросов на собеседовании, связанных с TestNG, тогда пожалуйста. У нас есть специальный пост о вопросах для интервью TestNG. Кроме того, вы можете найти полное руководство по TestNG здесь

120. Что такое TestNG?

TestNG — это среда тестирования, разработанная для упрощения широкого круга задач тестирования, от модульного тестирования до интеграционного тестирования.

121. Какие типы аннотаций доступны в TestNG?

@BeforeTest
@AfterTest
@BeforeClass
@AfterClass
@BeforeMethod
@AfterMethod
@BeforeSuite
@AfterSuite
@BeforeGroups
@AfterGroups
@Test

122. Что такое TestNG Assert и перечислите некоторые общие утверждения, поддерживаемые TestNG?

TestNG Asserts помогает нам проверить состояние теста в середине тестового прогона. Основываясь на утверждениях TestNG, мы будем считать успешным тест только в том случае, если он завершит тестовый прогон без выдачи каких-либо исключений.

Некоторые из распространенных утверждений, поддерживаемых TestNG:

  • assertEqual (фактическая строка, ожидаемая строка)
  • assertEqual (фактическая строка, ожидаемая строка, сообщение String)
  • assertEquals (фактическое логическое значение , ожидается логическое значение)
  • assertTrue (условие)
  • assertTrue (условие, сообщение)
  • assertFalse (условие)
  • assertFalse (условие, сообщение)

< p> Для полной публикации

123. Как создать и запустить TestNG.xml?

В среде TestNG нам нужно создать файл T estNG XML для создания и обработки нескольких тестовых классов. Мы настраиваем наш тестовый прогон, устанавливаем тестовую зависимость, включаем или исключаем любой тест, метод, класс или пакет и устанавливаем приоритет и т. Д. В XML-файле.

Для полной публикации

124. Как установить приоритет тестового примера в TestNG?

Мы используем атрибут priority для аннотаций @Test . Если приоритет не установлен, тестовые сценарии выполняются в алфавитном порядке.

123456789101112 package TestNG; import org.testng.annotations. *; открытый класс PriorityTestCase {@Test (priority = 0) public void testCase1 () {system.out.println (& # 34; Test Case 1 & # 34;); } @Test (priority = 1) public void testCase2 () {system.out.println (& # 34; Тестовый пример 2 & # 34;); }}

Вывод:

12 Контрольный пример 1 Контрольный пример 2

125. Что такое параметризованное тестирование в TestNG?

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

Там установить эти параметры двумя способами:

  • с testng.xml — Практический пример
  • с поставщиками данных — Практический пример

126. Как запустить группу тестовых примеров с помощью TestNG?

TestNG позволяет выполнять сложные группировки методов тестирования. Вы можете не только объявить, что методы принадлежат группам, но также можете указать группы, которые содержат другие группы. Затем можно вызвать TestNG и попросить включить определенный набор групп (или регулярных выражений), исключив другой набор. Это дает вам максимальную гибкость в том, как вы разбиваете тесты, и не требует перекомпиляции, если вы хотите запустить два разных набора тестов один за другим.

Группы указаны в вашем файле testng.xml и его можно найти в разделе & lt; test & gt; или & lt; suite & gt; ярлык. Группы, указанные в & lt; suite & gt; применяется ко всем тегам & lt; test & gt; теги внизу.

1234 @ Test (groups = {& # 34; smokeTest & # 34 ;, & # 34; financialTest & # 34;}) public void loginTest () {System.out.println (& # 34 ; Успешный вход в систему & # 34;);}

Просмотреть сообщение полностью

127. Какая польза от аннотации @Listener в TestNG?

Отв. Слушатели TestNG используются для настройки отчетов и ведения журнала. Одним из наиболее широко используемых слушателей в TestNG является интерфейс ITestListener . У него есть такие методы, как onTestStart, onTestSuccess , onTestFailure , onTestSkipped и т. Д. Мы должны реализовать этот интерфейс, создав собственный класс слушателя. Затем мы должны добавить аннотацию слушателей ( @Listeners ) в созданный класс.

Практический пример

128. Как мы можем создать структуру, управляемую данными, с помощью TestNG?

Используя аннотацию @DataProvider , мы можем создать среду тестирования, управляемую данными.

1234567891011121314 @DataProvider (name = & # 34; getData & # 34;) public Object [] [] getData () {//Объект [] [] данные = новый объект [rowCount] [colCount]; Объект [] [] данные = новый объект [2] [2]; данные [0] [0] = & # 34; FirstUid & # 34 ;; данные [0] [1] = & # 34; FirstPWD & # 34 ;; данные [1] [0] = & # 34; SecondUid & # 34 ;; данные [1] [1] = & # 34; SecondPWD & # 34 ;; вернуть данные; }

Практический пример

129. Где вы применили OOPS в Automation Framework?

Здесь мы дали четкое объяснение применения OOP в Automation Framework

130. Как обрабатывать уведомления браузера (Chrome) в Selenium?

 100 самых популярных вопросов и ответов на интервью с расширенным селеном

В Chrome мы можем использовать ChromeOptions, как показано ниже.

123 ChromeOptions options = new ChromeOptions (); options.addArguments (& # 34; disable-infobars & # 34;); WebDriver player = new ChromeDriver (options) ;

Я хотел бы закончить этот пост здесь. Заключительные слова. Добавьте в закладки этот пост «Вопросы для собеседования по тестированию на селен» для дальнейшего использования. Мы продолжаем обновлять этот пост на основании запросов пользователей.

131. Укажите типы данных, которые вы обрабатывали в Selenium?

  • Excel
  • CSV
  • XML
  • JSON
  • YAML
  • SQL

Видео с вопросами для интервью в реальном времени по Selenium

Вот несколько видеоуроков, которые содержат вопросы интервью по селену в реальном времени.

Мы получили несколько вопросов от наших читателей. Некоторые из них я включил сюда.

Вопросы и ответы по вопросам собеседования по Selenium WebDriver:

Есть ли сертификация по селену?

Обычно сертификаты предоставляются компаниями, которые разработали проприетарный инструмент, такой как QTP, AWS, Salesforce и т. Д., Selenium — это инструмент для тестирования программного обеспечения с открытым исходным кодом. Есть много поставщиков сертификации (учебных заведений), которые предоставляют сертификаты в Selenium, но Selenium — это программное обеспечение с открытым исходным кодом, оно не предлагает никаких собственных сертификатов. Если я на вашем месте, я предпочитаю сертификацию на таком языке программирования, как Java, а не на Selenium.

Могу ли я изучить селен самостоятельно?

Вы можете самостоятельно изучить Selenium. Я знаю многих тестировщиков автоматизации, которые изучают селен самостоятельно, просматривая блоги о Selenium, такие как SoftwareTestingMaterial. Изучите Selenium онлайн и практикуйте его, пока не почувствуете себя уверенно. Как только вы почувствуете себя уверенно, включите свои навыки автоматизации в свое резюме и, если возможно, продемонстрируйте свои навыки автоматизации своим менеджерам. Так что вы можете воспользоваться возможностью в вашей нынешней организации.

Перед изучением Selenium я предлагаю вам изучить
Основные принципы ручного тестирования
Java (подойдет Core Java).

Начните с Java, а затем переходите к Selenium.

Каковы основы использования селена?

Пакет Selenium состоит из 4 основных компонентов, а именно Selenium IDE, Selenium RC, WebDriver и Selenium Grid.

Легко ли изучить Selenium?

Да, конечно. Выучить Selenium легко. Ознакомьтесь с нашим руководством по Selenium

Сколько дней потребуется, чтобы изучить селен?

1-2 месяцев достаточно, если вы можете проводить хотя бы 3-4 часа в день.

Добавьте вопросы для собеседований по Selenium для новичков

Здесь мы рассмотрели большинство вопросов для собеседований, которые помогут вам пройти собеседование по Selenium как новички.

У меня трехлетний опыт работы, и я хотел бы подготовиться к собеседованию. Пожалуйста, включите вопросы собеседования по Selenium, если у вас есть 3-летний опыт работы.

Мы также ответили на вопросы собеседования с Selenium WebDriver за 3 года опыта.

Я работаю ручным тестером и подаю заявку на автоматизацию. Не могли бы вы перечислить вопросы на собеседовании по Selenium с учетом 5-летнего опыта и т. Д.

Этот список из более чем 100 вопросов для собеседований по Selenium поможет вам взломать интервью. Если у вас есть какие-либо вопросы, вы можете оставить комментарий ниже. Наша команда поможет вам.

Заключение

Мы здесь, чтобы помочь вам, ребята, мы будем часто включать расширенные вопросы для собеседований по Selenium. Также мы планируем предоставить ссылку для скачивания в формате PDF с вопросами и ответами на собеседование по Selenium. Загляните в этот раздел еще раз, чтобы загрузить его.

Надеюсь, теперь вы готовы принять участие в интервью. Последний шаг перед этим. Почему вы не можете проверить свои знания с помощью нашей популярной викторины по Selenium

Кроме того, изучение Java очень важно для взлома любого Selenium Interview. Поэтому просмотрите следующие руководства, чтобы получить больше знаний.

На собеседованиях с Selenium интервьюеры ожидают, что вы хорошо знакомы с Java или Python.

Не пропустите:

  • Учебник по Java для тестировщиков Selenium
  • Вопросы на собеседовании по Selenium Java
  • Вопросы на собеседовании по Selenium Python

Здесь я отобрал несколько постов, которые помогут вам узнать больше о том, что связано с интервью:

  • Объяснить структуру автоматизации тестирования
  • Вопросы на собеседовании по Test Automation Framework
  • Вопросы на собеседовании TestNG
  • Вопросы для собеседования по Selenium Framework
  • Вопросы на собеседовании по SQL
  • Собеседование по ручному тестированию Вопросы
  • Вопросы для собеседования по Agile
  • Почему вы выбираете тестирование программного обеспечения в качестве карьеры
  • Общие вопросы для собеседования

Если у вас есть любые вопросы, не стесняйтесь задавать в комментариях. Если вы найдете этот пост полезным, поделитесь им с друзьями в социальных сетях.

TAG: qa