Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Include testNG project structure into README.md #46

Merged
merged 3 commits into from
Apr 15, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 13 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,15 @@
[![Quality Gate](https://sonarcloud.io/api/project_badges/measure?project=aquality-automation_aquality-selenium-java-template&metric=alert_status)](https://sonarcloud.io/dashboard?id=aquality-automation_aquality-selenium-java-template)
[![Allure report](https://github.com/aquality-automation/aquality-selenium-java-template/actions/workflows/test-with-allure-report.yml/badge.svg)](https://aquality-automation.github.io/aquality-selenium-java-template/)

# This template provides example projects for TestNG and Cucumber. To use it, you need to delete the unused module.

# The Allure report is also used. If you don't need it, also delete it from the code.
aqualityAutomation marked this conversation as resolved.
Show resolved Hide resolved


aqualityAutomation marked this conversation as resolved.
Show resolved Hide resolved
# Aquality Selenium Template Project
Template for [aquality-selenium-java](https://github.com/aquality-automation/aquality-selenium-java) library.

### Project structure
## Project structure
- **aquality-selenium-template** - project related part with PageObjects, models and utilities
- **configuration/**: classes that used to fetch project config from [src/main/resources/environment](https://github.com/aquality-automation/aquality-selenium-java-template/blob/master/aquality-selenium-template/src/main/resources/environment) folder
- **forms/**: Page Objects
Expand All @@ -18,20 +23,24 @@ Template for [aquality-selenium-java](https://github.com/aquality-automation/aqu
- **runners/**: Cucumber test runners
- **stepdefinitions/**: step definition classes
- **transformations/**: Cucumber [data transformations](https://cucumber.io/docs/cucumber/configuration/)
- **aquality-selenium-template-testng** - TestNG implementation of the tests
- **steps/**: step classes
- **utilities/**: utils for testNG, such as JsonDataProvider and ModuleFactory
- **tests/**: classes with test methods
aqualityAutomation marked this conversation as resolved.
Show resolved Hide resolved

### Configuration
## Configuration
[settings.json](https://github.com/aquality-automation/aquality-selenium-java-template/blob/master/aquality-selenium-template/src/main/resources/settings.json) file contains settings of Aquality Selenium library. Additional information you can find [here](https://github.com/aquality-automation/aquality-selenium-java/wiki/Overview-(English)).

[allure.properties](https://github.com/aquality-automation/aquality-selenium-java-template/blob/master/aquality-selenium-template/src/main/resources/allure.properties) is a part of Allure Report configuration. See details [here](https://docs.qameta.io/allure/).

### Tests execution
## Tests execution
Scenarios from feature files can be executed with TestNG plugin for IDE (Intellij Idea, Eclipse)
or with Maven command ```mvn clean test``` where you can specify all necessary arguments.

If executed with Maven, tests will be run in ```4``` threads. To change the amount of threads add ```-Ddata.provider.thread.count``` property to the command.
E.g. ```mvn clean test -Ddata.provider.thread.count=10```.

### Reporting
## Reporting
Allure Framework is used as a reporting tool. Report data will be placed in ```target/allure-results/``` folder (you can change it in ```allure.properties``` file).

Run maven command ```mvn allure:serve``` to build and open report in web browser. To generate report in CI use corresponding plugin for your system.
Expand Down