atesting.ru Блог Вопросы для интервью с транспортиром | Материалы для тестирования программного обеспечения [Обновлено 2021 г.]

Вопросы для интервью с транспортиром | Материалы для тестирования программного обеспечения [Обновлено 2021 г.]

Этот пост о вопросах для собеседования с транспортиром предназначен для подготовки кандидатов к общим вопросам, с которыми они могут столкнуться при подаче заявки на вакансии по транспортиру. Он охватывает как базовые, так и расширенные вопросы для собеседования с транспортиром. Прежде чем продолжить, давайте рассмотрим некоторые неизбежные вопросы на собеседовании, такие как «Каковы причины выбора тестирования программного обеспечения в качестве своей карьеры» и «Объясните свою структуру автоматизации тестирования».

Похожие сообщения:

  • Учебное пособие по тестированию транспортира
  • Вопросы на собеседовании по Selenium
  • Вопросы на собеседовании TestNG
  • Вопросы на собеседовании по ручному тестированию
  • Вопросы на собеседовании по контролю качества программного обеспечения
  • < li>Вопросы на собеседовании по тестированию базы данных

  • Вопросы на собеседовании по SQL
  • Вопросы на собеседовании по тестированию API
  • Вопросы на собеседовании по Soap

< img class = "aligncenter" src = "/wp-content/uploads/2021/10/protractor-interval-questions-software-testing-material-updated-2021-cf56882.png" alt = "Вопросы для интервью с транспортиром | Материалы для тестирования программного обеспечения [Обновлено 2021 г.] "/>

1. Что такое транспортир?

Protractor — это среда для сквозного тестирования приложений Angular и Angular JS. Protractor запускает тесты для вашего приложения, запущенного в реальном браузере, взаимодействуя с ним так же, как и пользователь. Protractor — это порт node.js для webdriver.io, который является реализацией JavaScript фреймворка Selenium.
Protractor — это программа Node.js, которая поддерживает такие тестовые среды, как Jasmine, Mocha и Cucumber.

< р> 2. Какие предварительные условия необходимы для запуска Protractor?

Чтобы запустить Protractor, нам нужно установить Selenium WebDriver и Node.js. Мы можем загрузить пакет Protractor с помощью npm .

Узнайте, как установить Selenium (последнюю версию)

3. Как Protractor, Selenium Server и Selenium WebDriver работают вместе?

Protractor — это среда для сквозного тестирования приложений AngularJS. Protractor — это программа на Node.js, которая поддерживает тестовые среды Jasmine и Mocha.
Selenium — это среда автоматизации браузера. Selenium включает в себя Selenium Server, API WebDriver и драйверы браузера WebDriver.
Protractor работает вместе с Selenium, обеспечивая автоматизированную тестовую инфраструктуру, которая может имитировать взаимодействие пользователя с приложением Angular, запущенным в браузере или мобильном устройстве.

4. Почему вы выбираете Protractor при тестировании приложения, построенного на Angular или Angular JS, а не на Selenium?

Нет правила, согласно которому вы должны использовать Protractor, когда пользовательский интерфейс построен с помощью Angular или AngularJS. Это зависит от ваших требований и знаний команды. Оба этих инструмента (Protractor и Selenium) помогают нам в безупречной автоматизации браузера.
Вы можете просто использовать простой Selenium для тестирования приложений Angular. Protractor просто упрощает тестирование приложения Angular. Protractor — это фреймворк для тестирования приложений Angular.
Он имеет автоматическое ожидание элементов, и вы можете получить доступ к определенным элементам Angular с помощью.model и by.binding. Также он реализует объекты страницы во фреймворке, что делает тесты более удобными в обслуживании при правильном использовании.
Некоторые моменты, которые следует учитывать при принятии решения о том, использовать транспортир или нет. Это некоторые из особенностей Protractor, которые делают его достойным тестирования приложений AngularJS.
1. Protractor — это оболочка для WebDriverJS, поддерживающая структуры разработки, управляемые поведением, такие как Jasmine, Cucumber, Mocha и т. Д.,
2. Транспортир работает совместно с Selenium. Он предлагает некоторые другие новые стратегии поиска, которые автоматизируют тестирование приложений AngularJS.
3. Protractor использует Selenium Grid для одновременного запуска нескольких браузеров.
4. Protractor очень хорошо справляется с проблемами синхронизации $ http или $ timeout, возникающими из Angular/Angular JS.
5. Angular/Angular Код JS написан на JavaScript/TypeScript, и Protractor поддерживает оба этих языка.

5. Можно ли использовать Protractor для тестирования неугловых JS-приложений?

Да. Транспортир можно использовать для тестирования не-Angular JS или не-Angular приложений.

6. Какие тестовые среды поддерживает Protractor?

Protractor поддерживает две тестовые среды разработки, основанные на поведении (BDD), такие как Jasmine & amp; Мокко.

7. Что такое Jasmine?

Jasmine — это среда тестирования с открытым исходным кодом для JavaScript. Он предназначен для работы на любой платформе с поддержкой JavaScript. Он не требует DOM и имеет чистый, очевидный синтаксис, поэтому мы можем легко писать тесты.

8. Что такое мокко?

Mocha — это среда тестирования JavaScript для программ Node.js, включающая поддержку браузера, асинхронное тестирование, отчеты о покрытии тестов и использование любой библиотеки утверждений.

9. Что такое Typescript?

TypeScript — это супернабор JavaScript, скомпилированный в JavaScript. TypeScript — это строго типизированный объектно-ориентированный компилируемый язык, разработанный и поддерживаемый Microsoft. TypeScript может использоваться для разработки приложений JavaScript как для выполнения на стороне клиента, так и на стороне сервера (Node.js).

10. Что такое conf-файл в Protractor?

Файл конфигурации сообщает Protractor, как настроить Selenium Server, какие тесты запускать, как настроить браузеры и какую среду тестирования. использовать. Файл конфигурации также может включать одну или несколько глобальных настроек. В файле конфигурации представлены объяснения всех параметров конфигурации транспортира. Настройки по умолчанию включают автономный сервер Selenium Server, браузер Chrome и платформу тестирования Jasmine.

11. Что такое файл спецификации в Protractor?

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

12. Как исключить файл спецификации в Protractor ?

Вы можете исключить спецификации, добавив их в тег exclude в файле conf.js. Вы также можете добавить шаблоны, чтобы исключить множество тестовых сценариев с похожими именами.
Иногда мы можем столкнуться с ситуацией, когда из всех тестов выполняется всего несколько. В этом случае мы используем тег exclude в нашем файле conf.js для запуска только нескольких тестов. Допустим, мы хотим исключить тест с именем «myTest.js»
exclude: [myTest.js]

13. Какая польза от directConnect в Protractor?

Protractor может тестировать напрямую с Chrome и Firefox без использования Selenium Server. Чтобы использовать это, в вашем файле конфигурации установите directConnect: true.
directConnect: true — ваш тестовый сценарий напрямую взаимодействует с драйвером Chrome или драйвером Firefox, минуя любой сервер Selenium. Если это правда, настройки для seleniumAddress и seleniumServerJar будут проигнорированы. Если вы попытаетесь использовать браузер, отличный от Chrome или Firefox, будет выдана ошибка.
Преимущество прямого подключения к драйверам браузера заключается в том, что ваши тестовые скрипты могут запускаться и работать быстрее.

< сильный> 14. Каковы локаторы в Protractor?

Protractor поддерживает все стратегии расположения элементов, заданные Selenium, а также имеет уникальный набор локаторов, в частности, для идентификации элементов на основе атрибутов AngularJS.

Локаторы Selenium:

by.className
by.css
by.id
by.linkText
by.name
by. partialLinkText
by.tagName
by.xpath

Специфические локаторы для углов

by.binding
by.exactBinding
by.model < br /> by.repeater
by.exactRepeater
by.options

Другие локаторы элементов, представленные в Protractor:

by.buttonText
by. paritalButtonText
by.cssContainText
by.deepCss

15. Как добавить собственный локатор для транспортира?

Используя метод addLocator.

Обратитесь к этому примеру

16. Как вы проверяете состояние диспетчера веб-драйверов и как обновлять диспетчер веб-драйверов?

Чтобы проверить состояние диспетчера веб-драйверов, выполните в командной строке следующее

Статус диспетчера веб-драйверов

Чтобы обновить диспетчер веб-драйверов, запустите следующий код в командной строке

< strong> обновление webdriver-manager

17. Что такое ElementFinder?

ElementFinder просто представляет один элемент ElementArrayFinder (и больше похож на вспомогательный объект). В результате все, что можно сделать с помощью ElementFinder, также можно сделать с помощью ElementArrayFinder.
ElementFinder можно рассматривать как WebElement для большинства целей, в частности, вы можете выполнять с ними действия (например, щелкать, getText) так же, как и WebElement. После выполнения действия в ElementFinder последний результат из цепочки можно получить с помощью метода then. В отличие от WebElement, ElementFinder будет ждать, пока angular установится, прежде чем выполнять поиск или действия.
ElementFinder можно использовать для построения цепочки локаторов, которая используется для поиска элемента. ElementFinder фактически не пытается найти элемент до тех пор, пока не будет вызвано действие, что означает, что они могут быть настроены во вспомогательных файлах до того, как страница станет доступной.
element (by.locator («locator value»))

18. Что такое ElementArrayFinder?

ElementArrayFinder используется для операций с массивом элементов. ElementArrayFinder используется для установки цепочки условий, которые идентифицируют массив элементов. В частности, вы можете вызвать all (locator) и filter (filterFn), чтобы вернуть новый ElementArrayFinder, измененный условиями, и вы можете вызвать get (index), чтобы вернуть один ElementFinder в позиции «index».
Подобно jquery, ElementArrayFinder будет искать все ветки DOM, чтобы найти элементы, которые удовлетворяют условиям (то есть все, фильтровать, получать). Однако ElementArrayFinder на самом деле не будет извлекать элементы до тех пор, пока не будет вызвано действие, что означает, что его можно настроить в вспомогательных файлах (то есть в объектах страницы) до того, как страница станет доступной, и повторно использовать при изменении страницы.

19. Что такое browser.refresh в Protractor?

browser.refresh выполняет полную перезагрузку текущей страницы и загружает фиктивные модули перед Angular. Предполагает, что загружаемая страница использует Angular. Если вам нужно получить доступ к странице, на которой нет Angular при загрузке, используйте обернутый веб-драйвер напрямую.

1 driver.navigate (). refresh ();

20. В чем разница между GET и NAVIGATE в транспортире?

Get:
Метод Get используется для навигации к заданному пункту назначения. < br /> browser.get («https://www.softwaretestingmaterial.com»);

Navigate:
Метод Navigate используется для перехода к заданному месту назначения
browser.navigate ()

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

browser.navigate (). back ();
browser.navigate (). forward ( );

21. Как найти все ссылки на веб-странице с помощью транспортира?

Мы можем найти все ссылки на веб-странице, используя tagName ‘a’. Обычно все ссылки формируются с помощью тега привязки «a», и все ссылки будут иметь атрибут «href» со значением URL.

22. Как проверить текст всплывающей подсказки с помощью транспортира?

Мы можем проверить текст всплывающей подсказки с помощью транспортира, получив значение атрибута 'title'.

123 элемент (by.id (& # 34; some & # 34;)). getAttribute (& # 34; title & # 34;). then (function (tooltip) {console.log ( tooltip)}

23. Какие действия мыши можно выполнять с помощью транспортира?

1. click ()
2. doubleClick ()
3. contextClick ()
4. mouseUp ()
5. mouseDown (элемент)
6. mouseMove ( element)
7. mouseMove (xOffset, yOffset)
8.dragAndDrop (element1, element2)

24. Почему метод getText () возвращает Object вместо String в Protractor?

При использовании Java метод getText () возвращает соответствующий текст из элемента. Однако в Protractor метод getText () возвращает Object что-то вроде [objectObject]. В Protractor метод getText () возвращает Promise. Нам нужно решить эту проблему, чтобы получить текст.

Синтаксис:

123 element.getText (). then (function (text) {console.log (text);});

25. Как получить текст из текстового поля в транспортире?

Используя метод getAttribute, передав аргумент как значение. Метод getAttribute () возвращает обещание, которое содержит String

Синтаксис:

123 элемент (by.xpath (& # 34; текстовое поле xpath & # 34;). GetAttribute (& # 34; value & # 34;)). Then (function (textValue) {console.log (textValue)});

26. Как вы проверяете, существует ли элемент на веб-странице с помощью Protractor?

Чтобы определить, существует ли элемент на веб-странице с помощью функции isPresent

//Элемент существует
expect (element (by.binding ('person.name')). isPresent ()). toBe (true);

//Элемент отсутствует
expect (element (by.binding ( 'notPresent')). isPresent ()). toBe (ложь);

27. Какие методы представлены в классе предупреждений?

Методы, представленные в классе предупреждений:
1. accept ()
2. dismiss ()
3. getText ()
4. sendKeys ()

28. Как установить значение для подсказки Alert в Protractor ?

Используя метод sendKeys () класса Alerts, мы устанавливаем значение для подсказки Alert в Protractor.

1 browser.switchTo (). alert (). sendKeys (& # 34; softwaretestingmaterial & # 34;)

29. Как принять оповещение в транспортире ?

Используя метод accept () класса Alerts, мы принимаем оповещения в транспортире.

Примечание: мы должны переключить элемент управления на предупреждение с помощью switchTo (). alert () перед принятием предупреждения.

< table class = "crayon-table">

1 browser.switchTo (). alert (). accept ()

30. Как отменить оповещение в транспортире?

Используя метод dismiss () класса Alerts, мы отменяем или закрываем оповещения в транспортире.

Примечание: мы должны переключить элемент управления на предупреждение с помощью switchTo (). Alert () перед тем, как отменить предупреждение.

1 browser.switchTo (). alert (). dismiss ()

31. Как остановить загрузку страницы в транспортире при загрузке элемента?

Используя Key.ESC для основного элемента в транспортире.

1 browser.actions (). sendKeys (protractor.Key.ESC) .perform () ;

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

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

33. Как проверить, включен ли элемент?

Чтобы проверить, включен ли элемент, мы используем метод isEnabled () в Protractor. Метод isEnabled () возвращает логическое значение в зависимости от состояния элемента. Он возвращает true, если элемент включен, и false, если элемент не включен.

34. Как проверить, выбран ли раскрывающийся список в приложениях angular?

Чтобы проверить, выбран ли раскрывающийся список в приложениях angular с помощью Protractor, мы используем метод isSelected (). isSelected () возвращает логическое значение. Возвращает истину, если элемент выбран, и ложь, если элемент не выбран.

35. Как вы находите Angular на своей странице?

Откройте chrome devtools или firefox и выясните, определено ли значение angular. Ожидается, что для приложений AngularJS переменная angular будет доступна в глобальном контексте.

Примечание. Убедитесь, что ваша версия Angular обновлена ​​- Protractor поддерживает Angular и AngularJS 1.0.6/1.1.4 и выше.

36. Какие браузеры поддерживает Protractor?

Protractor поддерживает две последние основные версии Chrome, Firefox, Safari и IE.

Ознакомьтесь с полным списком поддерживаемых браузеров. здесь.

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

  • Учебное пособие по тестированию транспортира
  • Вопросы для собеседования по Selenium
  • Вопросы для собеседований TestNG
  • Вопросы для собеседований по ручному тестированию
  • Вопросы для собеседований по контролю качества программного обеспечения
  • Вопросы для собеседований по тестированию баз данных
  • Вопросы для собеседований по SQL
  • Вопросы на собеседовании по тестированию API
  • Вопросы на собеседовании по мылу

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

TAG: qa