Skip to content

Ramzesito/QAMID62-diplom-Shvets

Repository files navigation

Процедура запуска автотестов

Общая информация

Автотесты разработаны для исполнения в IDE Android Studio с использованием дополнительного ПО:

  • Gradle (сборщик проектов),
  • JUNIT4 (тестовый фреймворк),
  • Espresso (тестовый фреймворк),
  • Allure (библиотека генерации отчетности),
  • Git, GitHub (система контроля версий и репозиторий для их хранения),

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

Тестируемое приложение находится в папке ./app,

Расположение основных файлов:

.\app\local.properties - локальные настройки, путь к расположению пакета SDK,

.\app_build.gradle, .\app_gradle.properties, .\app_settings.gradle - настройки Gradle,

.\app\src\main - исходные файлы приложения,

.\app\src\androidTest - папка с тестовыми классами,

Структура тестовых и pageobject-классов:

.\data\DataHelper.java - класс датахэлпера, для хранения и формирования часто используемых данных,

.\pageobject\AboutScreen.java - класс для описания сущности экрана О приложении,

.\pageobject\AppMain.java - класс для описания сущности всего приложения,

.\pageobject\Dashboard.java - класс для описания сущности дашбоарда,

.\pageobject\LoginScreen.java - класс для описания сущности экрана авторизации,

.\pageobject\MainScreen.java - класс для описания сущности главного экрана,

.\pageobject\MissionScreen.java - класс для описания сущности экрана Mission,

.\pageobject\NewsControlPanel.java - класс для описания сущности панели управления новостями,

.\pageobject\NewsScreen.java - класс для описания сущности экрана опубликованных новостей,

.\test\AppMainTest.java - класс для тестирования общих функций приложения,

.\test\AuthorizationTest.java - класс для тестирования экрана авторизации,

.\test\BaseForTest.java - базовый класс с общими методами для остальных тестовых классов,

.\test\DashboardTest.java - класс для тестирования дашбоарда,

.\test\NewsControlPanelTest.java - класс для тестирования панели кправления новостями,

.\runner\UITestSuite.java - класс для одномоментного запуска всех тестов,

Запуск автотестов:

Тесты запускаются либо по одному, либо наборами через тестовые классы *Test.java, при использовании класса UITestSuite.java запустятся все автотесты проекта. Чтобы запустить тест (или набор тестов) необходимо кликнуть правой кнопкой мыши на коде теста (или заголовке соответстующего класса) и выбрать в меню пункт Run<название теста/класса> (или нажать Ctrl+Shift+F10)

Screenshot_1

Тесты начнут работу и по истечении некоторого времени в нижней панели во вкладке Run отобразится краткий итог - какие и сколько тестов прошли/не прошли.

Screenshot_2

Формирование подробной отчетности:

При помощи библиотеки Allure формируется подробный отчет о тестировании, включающий тестовое окружение, описание тестов, разбивку по функциональности, пошаговый протокол и пр. Для этого в коде прописаны специальные аннотации. Чтобы получить подробный отчет Allure, необходимо после отработки тестов скопировать папку .\data\data\ru.iteco.fmhandroid\files из эмулятора android на локальный диск тестирующего компьютера. Затем, находясь в скопированной папке, набрать в командной строке (можно использовать cmd.exe) команду "allure serve". Подробный отчет откроется в браузере (ссылка на zip)

Screenshot_3

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published