Skip to content

CordedWare/OpenWeather_AutoTest_Framework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java | Selenium | TestNG | Maven | POM | Rest Assured проект автотестов

Это пример проекта на Java 11 Open JDK | Selenium WebDriver | TestNG | REST Assured | Maven созданный в IntelliJ IDE, с использованием модели Page Object Model и Generic Type.

Веб-сайт https://openweathermap.org/ использовался для создания функциональных тестов, API тестов, и UI тестов.

ci.yml файл использовался для рабочего процесса GitHub.

dorny/test-reporter@v1 использовался для создания отчетов после каждого запуска CI.

Используемые pom.xml dependencies:

<dependencies>

<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>7.6.1</version>
</dependency>

<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>4.5.3</version>
</dependency>

<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>5.3.0</version>
</dependency>

<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.10</version>
</dependency>

<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.14.1</version>
</dependency>

<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>rest-assured</artifactId>
<version>5.3.0</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20220924</version>
<scope>test</scope>
</dependency>

</dependencies>

Тестирование API

Для тестирования requests и responses использовался DevTools:  

  DevTools devTools;

В классе CaptureNetworkTraffic был создан метод setUpDevTool(WebDriver driver)  для перехвата трафика:


public CaptureNetworkTraffic setUpDevTool(WebDriver driver) {
     devTools = ((ChromeDriver) driver).getDevTools();
     devTools.createSession();
     devTools.send(Network.enable(Optional.empty(), Optional.empty(), Optional.empty()));
 
     return this;
 } 

org.openqa.selenium.devtools.v106.network.Network использовался для перехвата трафика.

Класс HttpURLConnection использовался для отправки прямых вызовов API и проверки ответов.

Библиотека REST Assured и POJO Model использовались для тестирования и проверки REST API.

Настройте проект и выполните тесты локально.

1. Установите IntelliJ IDE:
https://www.jetbrains.com/help/idea/installation-guide.html

2. Скопируйте HTTPS ссылку на проект из репозитория GitHub: 
https://github.com/CordedWare/OpenWeather_AutoTest_Framework.git

3. Клонируйте репозиторий из главного меню: 
https://www.jetbrains.com/help/idea/cloning-repository.html#clone_project_from_main_screen

4. Перейдите к пакету "resources" package и скопируйте файл 'local.properties.TEMPLATE'. Вставьте его в пакет "resources" package и переименуйте новый файл как 'local.properties'. 

5. Выполните тестовый класс или отдельный тест, открыв тестовый класс, щелкнув правой кнопкой мыши зеленый треугольник и выбрав «Run».

About

Java | Selenium | TestNG | REST Assured | Maven | POM

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages