Прежде чем объяснять интервьюеру структуру автоматизации тестирования, я настоятельно рекомендую вам перейти по приведенной ниже ссылке, чтобы узнать больше о следующем
- Типы платформ автоматизации тестирования
- Вопросы для собеседования по платформе автоматизации тестирования
Вернемся к этому полному руководству, чтобы объяснить структуру автоматизации в ходе интервью. Здесь я объясню вам каждый компонент архитектуры на основе приведенного ниже снимка экрана. Сформулируйте ответ своими словами, объясняя структуру интервьюеру.
Нам необходимо указать внутри и вне нашей Среды автоматизации тестирования, например, используемый язык программирования, Тип фреймворкаиспользуемый, базовый класс теста (инициализация WebDriver, неявные ожидания), как мы разделяем локаторы элементов и тесты (объекты страницы, фабрика страниц), файл служебных функций, файлы свойств, аннотации TestNG, как мы параметризуем тесты с помощью файлов Excel, как мы фиксируем ошибку снимки экрана, создание отчетов (объемные отчеты), отправка отчетов по электронной почте, использование системы контроля версий и использование инструмента непрерывной интеграции.
Просмотрите видео ниже, чтобы увидеть «Объяснение платформы автоматизации Selenium»
Если вам понравилось это видео, подпишитесь на наш канал YouTube, чтобы получать больше видеоуроков.
Язык: В нашем проекте Selenium мы используем язык Java. Несмотря на то, что Selenium поддерживает несколько языков, мы используем язык Java только потому, что большинство разработчиков автоматизации имеют знания о Selenium с Java.
Java для Selenium
Тип платформы: В нашем проекте мы используем платформу, управляемую данными, с использованием шаблона проектирования Page Object Model с Page Factory.
POM: в соответствии с объектной моделью страницы мы поддерживают класс для каждой веб-страницы. Каждая веб-страница имеет отдельный класс, и этот класс содержит функциональные возможности и элементы этой веб-страницы. Отдельные классы для каждого отдельного теста.
Разница между объектной моделью страницы и фабрикой страниц
Пакеты: у нас есть отдельные пакеты для страниц и тестов . Все классы, связанные с веб-страницей, относятся к пакету Pages, а все классы, связанные с тестами, относятся к пакету Tests.
Например, Домашняя страница и Страница входа имеют отдельные классы для хранения локаторов элементов. Для теста входабудет отдельный класс, который вызывает методы из класса Домашняя страница и класс Страница входа.
Я объясню на основе приведенной ниже структуры среды автоматизации тестирования. .
На приведенном выше снимке экрана показан стандартизированный проект maven. В соответствии с вышеуказанным проектом maven все тесты хранятся в папке src/test/java .а остальные файлы (такие как config.properties, локаторы элементов (классы POM), служебные файлы, тестовые данные и т. д.) хранятся в папке 'src/main/java'. .Где вы применили OOPS в Automation Framework
Тестовый базовый класс: Класс Test Base (TestBase.java) имеет дело со всеми общими функциями, используемыми всеми страницами. Этот класс отвечает за загрузку конфигураций из файлов свойств, инициализацию WebDriver, неявные ожидания, отчеты об экстентах, а также за создание объекта FileInputStream, который отвечает за указание на файл, из которого должны быть прочитаны данные.< /em>
Класс полезности (класс функций AKA): Класс Utility (TestUtil.java) хранит и обрабатывает функции (повторяющийся по своей природе код, такой как ожидание, действия, захват снимков экрана, доступ к Excel, отправка электронной почты и т. д.), которые можно обычно использовать во всей структуре. Причина создания служебного класса заключается в достижении возможности повторного использования. Этот класс расширяет класс TestBase, чтобы наследовать свойства TestBase в TestUtil.
Файл свойств: этот файл (config.properties) хранит информация, которая остается статической во всей структуре, такая как информация для конкретного браузера, URL-адрес приложения, путь к снимкам экрана и т. д.
Все детали, которые изменяются в зависимости от среды и авторизации, такие как URL-адрес, учетные данные для входа, хранятся в config.propertiesфайл. Хранение этих сведений в отдельном файле упрощает обслуживание.
Снимки экрана: снимки экрана будут сохраняться в отдельной папке, а также снимки экрана неудачных тестов будут добавляться в отчеты по экстентам. .
Как сделать скриншоты неудачных тестов
Данные тестирования: все исторические данные тестирования будут храниться на листе Excel (controller. xlsx). С помощью controller.xlsx, мы передаем тестовые данные и проводим тестирование на основе данных. Мы используем Apache POI для обработки таблиц Excel.
TestNG: использование TestNG для утверждений, группировки и параллельного выполнения.
Здесь вы можете найти полное руководство по TestNG, а также найти вопросы интервью TestNG
Maven: использование Maven для сборки, выполнения и зависимостей. Интеграция зависимости TestNG в файл POM.xml и запуск этого файла POM.xml с помощью Jenkins.
Как создать проект Maven
Инструмент управления версиями: мы используем Git в качестве репозитория для хранения наших тестовых сценариев.
Jenkins: с помощью инструмента Jenkins CI (непрерывной интеграции) мы выполняем тестовые сценарии на ежедневно, а также для ночного исполнения по расписанию. Результаты тестирования будут отправлены одноранговым узлам, использующим Jenkins.
Проект Maven с Jenkins
Отчеты по экстенту:Для целей отчетности мы используем Extent Reports. Он генерирует красивые HTML-отчеты. Мы используем отчеты по экстентам для ведения журналов, а также для включения снимков экрана с неудачными тестами в отчет по экстентам.
Здесь вы можете найти, как создавать отчеты по экстентам, а также найти, как добавлять снимки экрана в отчеты по экстентам.
Вы должны объяснить все это, когда вас попросят объяснить структуру автоматизации тестирования на собеседовании. Если у вас есть какие-либо другие мысли о том, как объяснить структуру автоматизации тестирования, прокомментируйте ниже в разделе комментариев.
Здесь я выбрал несколько сообщений, которые помогут вам узнать больше о материалах, связанных с интервью:
- Вопросы для собеседования по Selenium
- Вопросы для собеседования по Test Automation Framework
- Вопросы для собеседования по TestNG
- Вопросы для собеседования по SQL
- Вопросы для собеседования по ручному тестированию
- Вопросы для собеседования по Agile
- Почему вы выбираете тестирование программного обеспечения в качестве карьеры
- Общие вопросы интервью
Если у вас есть еще вопросы, не стесняйтесь задавать их в комментариях. Если вы считаете этот пост полезным, поделитесь им с друзьями в социальных сетях.
TAG: qa