30 САМЫХ ПОПУЛЯРНЫХ ВОПРОСОВ И ОТВЕТОВ НА ИНТЕРВЬЮ TESTNG

Самые популярные вопросы на собеседовании TestNG:

В этом посте мы увидим вопросы для собеседования TestNG с ответами. Наше основное внимание уделяется вопросам для собеседования по Selenium TestNG, а также мы пишем несколько вопросов для собеседования по Selenium. Прежде чем идти дальше, давайте рассмотрим некоторые неизбежные вопросы на собеседовании, такие как Каковы причины выбора тестирования программного обеспечения в качестве своей карьеры и Объяснение вашей платформы автоматизации тестирования Selenium. Я не хочу отнимать у вас много времени, но я не мог двигаться дальше, не упомянув в любом интервью об этом неизбежном вопросе, например Расскажите мне о себе. Нажмите на ссылку, чтобы получить представление о том, как ответить Расскажите мне о себе. Итак, давайте перейдем к самому посту.

30 САМЫХ ПОПУЛЯРНЫЕ ВОПРОСЫ И ОТВЕТЫ НА ИНТЕРВЬЮ TESTNG

Не пропустите следующие публикации:

  • 100+ вопросов и ответов на собеседовании по Selenium
  • Вопросы на собеседовании по Java для тестировщиков Selenium
  • Вопросы на собеседовании по Framework

Вот видеоурок «Вопросы и ответы для собеседования по Selenium TestNG»:

30 САМЫХ ПОПУЛЯРНЫХ ВОПРОСОВ И ОТВЕТОВ НА ИНТЕРВЬЮ TESTNG

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

Если вам понравилось это видео, подпишитесь на наш канал YouTube, чтобы получать больше видеоуроков.

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

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

2. Каковы преимущества TestNG?

  1. TestNG обеспечивает параллельное выполнение методов тестирования
  2. Он позволяет определить зависимость одного метода тестирования от другого метода
  3. Он позволяет назначать приоритет методов тестирования
  4. Он позволяет группировать методы тестирования в тестовые группы
  5. Он поддерживает параметризацию тестовых случаев с использованием аннотации @Parameters
  6. Он позволяет проводить тестирование на основе данных с использованием аннотации @DataProvider.
  7. Он имеет различные утверждения, которые помогают проверять ожидаемые и фактические результаты.
  8. Подробные отчеты (HTML)

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

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

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

4. Можете ли вы организовать приведенный ниже testng.xmlтеги от родительского элемента к дочернему?

<test> <люкс> <класс> <методы> <classes>

Правильный порядок тегов TestNG следующий: <suite> <тест> <классы> <класс> <методы>

5. Как создать и запустить testng.xml ?

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

Просмотреть полную публикацию

6. Какова важность файла testng.xml?

В проекте Selenium TestNG мы используем файл testng.xml для настройки полного набора тестов в один файл. Некоторые из функций заключаются в следующем.

  • Файл testng.xml позволяет включать или исключать выполнение тестовых методов и тестовых групп.
  • Он позволяет передавать параметры в тестовые примеры
  • Позволяет добавлять групповые зависимости
  • Позволяет добавлять приоритеты к тест-кейсам
  • Позволяет настраивать параллельное выполнение тест-кейсов
  • Позволяет параметризовать тест-кейсы

7. Как передать параметр через файл testng.xml в тестовый пример?

Мы могли бы определить параметры в файле testng.xml а затем сослаться на эти параметры в исходных файлах.

Создайте тестовый класс Java, скажем, ParameterizedTest.java , и добавьте тестовый метод, скажем параметризованныйTest() в тестовый класс. Этот метод принимает строку в качестве входного параметра. Добавьте к этому методу аннотацию @Parameters(“browser”). //Вопросы для собеседования TestNG ("firefox")){ System.out.println("Открыть драйвер Firefox"); }else if(browser.equals("chrome")){ System.out.println("Открыть драйвер Chrome"); } }

Параметру будет передано значение из testng.xml, которое мы увидим на следующем шаге.

Мы можем установить параметр, используя приведенный ниже синтаксис, в файле testng.xml. <parameter name="browser" value="firefox"/>

Здесь атрибут name представляет имя параметра, а значение представляет значение этого параметра.

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

8. Что такое TestNG Assert и перечислите распространенные TestNG Asserts?

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

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

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

Для полного сообщения

9. Что такое Soft Assert в TestNG?

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

Если есть какое-либо исключение и вы хотите его создать, вам нужно использовать assertAll () в качестве последнего оператора в @Test и наборе тестов снова продолжите следующий @Test как есть.

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

10. Что такое Hard Assert в TestNG?

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

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

11. Что такое проверка исключений в TestNG?

TestNG предоставляет возможность отслеживать обработку исключений кода. Вы можете проверить, генерирует ли код ожидаемое исключение или нет. Ожидаемое исключение, которое необходимо проверить при выполнении тестового примера, упоминается с помощью значения атрибута expectedExceptions вместе с аннотацией @Test.

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

< сильный>12. Как установить приоритет тестового примера в TestNG?

Мы используем атрибут priority для @Testаннотации. Если приоритет не установлен, тестовые сценарии выполняются в алфавитном порядке. //TestNG Пакет вопросов для интервью TestNG; импортировать org.testng.annotations.*; общественный класс PriorityTestCase { @Test (приоритет = 0) public void testCase1 () { system.out.println ("Тестовый пример 1"); } @Test(priority=1) public void testCase2() { system.out.println("Тестовый пример 2"); }

Выход: Тестовый пример 1 Тестовый пример 2

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

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

Существует два способа установите эти параметры:

  • с помощью testng.xml – практический пример
  • с использованием поставщиков данных– Практический пример

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

С помощью @DataProviderаннотацию,  мы можем создать платформу, управляемую данными.//Вопросы для собеседования TestNG @DataProvider(name="getData") public Object[][] getData(){ //Object [][] data = new Object [rowCount][colCount]; Данные объекта [][] = новый объект [2][2]; данные [0][0] = "FirstUid"; данные [0][1] = "FirstPWD"; data[1][0] = "SecondUid"; data[1][1] = "SecondPWD"; возврат данных;

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

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

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

Группы указаны в файле testng.xml, и их можно найти. либо под тегом <test> или <suite>. Группы, указанные в теге <suite>, применяются ко всем тегам <test>, расположенным ниже. @Test (groups = { "smokeTest", "functionalTest" }) public void loginTest() { System.out.println("Вход выполнен успешно");

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

Вопросы для собеседования TestNG 16–33

16. Как создать группу групп в TestNG?

Группы также могут включать в себя другие группы. Эти группы называются Метагруппы. Например, вы можете определить группу all, включающую smokeTest  и functionalTest.. Давайте изменим наш файл testng.xml следующим образом:<groups> <define name="all"> <include name="smokeTest"/> <include name="functionalTest"/> </определить> <запустить> <include name="all" /> </запустить> </groups>

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

17. Как параллельно запускать тестовые примеры с помощью TestNG?

мы можем использовать атрибут “параллельный” в testng.xml для параллельного выполнения теста в TestNG.

Атрибут параллельного тега suite может принимать четыре значения:< /p>

тесты Все тестовые примеры внутри тега <test> файла testng.xml будут выполняться параллельно
классы – Все тестовые примеры внутри класс Java будет запускать параллельные
методы– Все методы с аннотацией @Test будут выполнять параллельные
экземпляры. – Тестовые случаи в одном экземпляре будут выполняться параллельно, но два метода двух разных экземпляров будут выполняться в разных потоках. .<suite name="softwaretestingmaterial" Parallel="methods">

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

18. Как исключить определенный метод тестирования из выполнения тестового примера?

Добавив тег исключения в testng.xml<классы> <class name="TestCaseName"> <методы> <exclude name="TestMethodNameToExclude"/> </методы> </класс> </classes>

19. Как исключить определенную группу тестов из выполнения тестового набора?

Добавив тег исключения в файл testng.xml<groups> <запустить> <exclude name="TestGroupNameToExclude"/> </запустить> </groups>

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

20. Как отключить тестовый пример в TestNG?

Чтобы отключить тестовый пример, мы используем параметр Enabled = false в аннотации @Test.@Test(enabled = false)

21. Как пропустить выполнение метода @Test в TestNG?

С помощью throw new SkipException()

Once SkipException() выброшено, оставшаяся часть этого тестового метода не будет выполнена, и управление перейдет непосредственно к выполнению следующего тестового метода. Throw new SkipException("Skipping — This is not готовы к тестированию ");

Практично Пример

22. Как проигнорировать тестовый пример в TestNG?

Чтобы игнорировать тестовый пример, мы используем параметр Enabled = false в аннотации @Test.

@Test(enabled = false)

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

23. Как TestNG позволяет указывать зависимости?TestNG допускает два способа объявления зависимостей.

Использование атрибутов dependOnMethods в аннотациях @Test — практический пример
Использование атрибутов dependOnGroups в аннотациях @Test — практический пример

< сильный>24. Каковы различные способы создания отчетов о результатах TestNG?

TestNG предлагает два способа создания отчета.

Прослушиватели реализуют интерфейс org.testng.ITestListener и получают уведомление в режиме реального времени о том, когда тест запускается, проходит, завершается неудачно и т. д.

Reporters реализует интерфейс org.testng.IReporter и получает уведомление, когда TestNG запустил все пакеты. Экземпляр IReporter получает список объектов, описывающих весь запуск теста.

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

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

Практический пример26. Как написать регулярное выражение в файле testng.xml для поиска методов @Test, содержащих ключевое слово “дым”.Регулярное выражение для поиска методов @Test, содержащих ключевое слово “дым”, указано ниже.<methods> <include name=".*smoke.*"/> </методы>27. Какую единицу времени мы указываем в наборах тестов и тестовых примерах? Мы указываем единицу времени в наборах тестов и тестовых примерах в миллисекундах.

28. Перечислите различные способы вызова TestNG?

TestNG можно вызывать следующими способами

  • Использование Eclipse IDE
  • Использование инструмента сборки ant
  • Из командной строки
  • Использование IntelliJ IDEA

29. Как запустить TestNG с помощью командной строки?

Запустите TestNG с помощью командной строки

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

C:UsersAdminDesktopSTMSeleniumTutorialworkspaceSoftwareTestingMaterial set classpath=C:UsersAdminDesktopSTMSeleniumTutorialworkspaceSoftwareTestingMaterialbin;C:UsersAdminDesktopSTMSeleniumTutorialworkspaceSoftwareTestingMateriallib * java org.testng.TestNG C:UsersAdminDesktopSTMSeleniumTutorialworkspaceSoftwareTestingMaterialtestng.xml

30. Какая польза от @Test(infectionCount=x)?

Атрибут invocacycount сообщает, сколько раз TestNG должен запускать тестовый метод @Test(invocacyCount = 10) public void testCase1 (){

В этом примере метод testCase1 будет вызываться десять раз

31. Для чего используется @Test(threadPoolSize=x)?

The threadPoolSize Атрибут сообщает о необходимости формирования пула потоков для запуска тестового метода через несколько потоков.

Примечание. Этот атрибут игнорируется, если не указан invoctionCount @Test(threadPoolSize = 3, infectionCount = 10) public void testCase1(){

В этом примере метод testCase1  будет вызываться из трех разных потоков

32. Что означает тайм-аут теста в TestNG?

Максимальное количество миллисекунд, которое должно занять тестовый пример. @Test(threadPoolSize = 3, invoctionCount = 10,  timeOut = 10000) public void testCase1(){

В этом примере функция testCase1 будет вызываться десять раз из трех разных потоки. Кроме того, тайм-аут в десять секунд гарантирует, что ни один из потоков не будет блокироваться в этом потоке навсегда.

33. Что такое аннотации @Factory и @DataProvider?

@Factory: Фабрика выполнит все тестовые методы, присутствующие внутри тестового класса, используя отдельный экземпляр соответствующего класса с другим набором данных.

@DataProvider: метод тестирования, использующий DataProvider, будет выполнять определенные методы несколько раз на основе данных, предоставленных DataProvider. Тестовый метод будет выполнен с использованием того же экземпляра тестового класса, к которому принадлежит тестовый метод.

Я хотел бы завершить этот пост «Вопросы для собеседования с TestNG» здесь.

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

Следующие руководства могут оказаться полезными.

  • TestNG Tutorial
  • Selenium Tutorial
  • Java Tutorial

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

  • 100+ вопросов и ответов на собеседовании по Selenium
  • Вопросы на собеседовании по Java для тестировщиков Selenium
  • Вопросы на собеседовании по Framework

TAG: qa

От QA genius

Adblock
detector