Skip to content

ShamsutdinovAnvar/Wegotrip_UI_tests

Repository files navigation

Test automation project (UI) for service WeGoTrip

Bookmate_logo.png

WeGoTrip is the best travel app with audio guide to pass self guided walking tours and to buy tickets to museums of the world with personal skip the line or fast-track access.

📃 Table of contents

✔️ Tools and technologies

✔️ Implemented checks

✔️ Running tests from the terminal

✔️ Run tests in Jenkins

✔️ Test results report in Allure Report

✔️ Integration with Allure TestOps

✔️ Integration with Jira

✔️ Notifications in Telegram using bot

✔️ Example of running test in Selenoid

🧑‍💻 Tools and technologies

In this project, autotests are written in Java using the Selenide framework for UI tests.

Gradle is used to build the project.

JUnit 5 is used as a framework for unit testing.

The tests are run from Jenkins.

Selenoid is used to launch browsers in containers Docker.

Allure Report, Allure TestOps, Jira, Telegram Bot are used to visualize test results.

📑 Implemented checks

       UI

  • Checking the operation of the button "Help"
  • Checking the operation of the button "Favorites"
  • Checking the operation of the button "Account"
  • Checking the operation of the button "Explore all destinations"
  • Checking city page title
  • Checking block "Top attractions in city"
  • Checking block "Popular cities to visit in country"
  • Checking block "Top attractions in country"
  • Checking authorization with login/password
  • Checking search for attractions
  • Checking search for cities

💻 Running tests from the terminal

Local tests run

gradle clean test

Remote tests run

gradle clean test 
-Dbrowser=${BROWSER}
-DbrowserVersion=${BROWSER_VERSION}
-DbrowserSize=${BROWSER_SIZE}
-DbrowserMobileView="${BROWSER_MOBILE}"
-DremoteDriverUrl=https://${LOGIN}:${PASSWORD}@${REMOTE_DRIVER_URL}/wd/hub/
-DvideoStorage=https://${REMOTE_DRIVER_URL}/video/
-Dthreads=${THREADS}

Build parameters

REMOTE_URL – the address of the remote server where the tests will be run.

BROWSER – the browser in which the tests will be run (by default - chrome_).

BROWSER_VERSION – the browser version in which the tests will be run (by default - 91.0_).

BROWSER_SIZE – the size of the browser window in which the tests will be performed (by default - 1920x1080_).

Run tests in Jenkins

To start the build, you need to specify the parameter values and click Build.

job

After the assembly is completed, an icon will appear in the Build History block next to the assembly number Allure Report, clicking on which will open a page with a generated html report.

job

Test results report in Allure Report

📌 General information

The main page of the Allure report contains the following information blocks:

  • ALLURE REPORT - displays the date and time of passing the test, the total number of cases run, as well as a diagram indicating the percentage and number of successful, dropped and broken during the execution of tests
  • TREND - displays the trend of passing tests from build to build
  • SUITES - displays the distribution of test results by test sets
  • ENVIRONMENT - displays the text environment on which the tests were run (in this case, the information is not specified)
  • CATEGORIES - displays the text environment on which the tests were run (in this case, the information is not specified)
  • FEATURES BY STORIES - displays the distribution of tests by the functionality they are checking
  • EXECUTORS - displays the executor of the current build

Allure Report

Integration with Allure TestOps

📌 The main dashboard

dashboards

📌 Test cases

test cases

Integration with Jira

jira

Notifications in Telegram using bot

After the assembly is completed, a special bot created in Telegram automatically processes and sends a message with a report on the test run.

Example of running test in Selenoid

Video is attached to each test in the report.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages