Skip to content

Mobile part of the graduation project for the course QA.GURU (Python)

Notifications You must be signed in to change notification settings

slazarska/spelly_mobile_test

Repository files navigation

Automated Android tests for the mobile application Spelly

Content:

Technology Stack:

Python PyCharm Pytest Selene Android Studio Appium Browserstack Jenkins Allure Report AllureTestOps Jira Telegram

In a nutshell about the project

  • Patterns Page Object and Application Manager
  • Self-documenting code
  • Custom local launch using Android Studio or Browserstack
  • Remote launch using Jenkins and Browserstack
  • Allure Reports with attachments: logs, screenshots, videos
  • Integration with Allure TestOps
  • Integration with Jira
  • Notifications about test launch and test results via Telegram

Checks are implemented:

  • - Opening the spells page
  • - Check the name of the spell
  • - Check the attributes on the spells page
  • - Adding the spell to the favorite spells list

Remote launch via Jenkins

To run tests from Jenkins:

  1. Click the "Build Now" button. image

Local launch

To run locally:

  1. Clone the repository
  2. Install Poetry (poetry install)
  3. Open the project in PyCharm, add Python Interpreter
  4. Launch BrowserStack
    • Sign up and get credentials (username, access key), upload apk from resources folder to get app id
  5. Install Android Studio and Appium
    • Start Appium Server
    • Run device emulator via Virtual Device Manager in Android Studio
  6. Create env files in the project folder according to the samples:
    • config.browserstack.env
    • config.local.env
  7. Run the tests in PyCharm or on the command line:
pytest . --alluredir allure-results/

Build parameters:

pytest . --alluredir allure-results/

In terminal

  • for local run with device emulator:
env -S "context=local" pytest . --alluredir allure-results/
  • for remote run in BrowserStack:
env -S "context=browserstack" pytest . --alluredir allure-results/

Or in the config.py file, change the value of EnvContext:

  • local — run locally with device emulator
  • browserstack — run in BrowserStack
  1. Check launch status in BrowserStack image image

Allure Report is connected to build reports:

image image

If running locally, to check the Allure Report, enter on the command line:

allure serve .\allure-results

Allure TestOps is used as a Test Management System:

image image

Integration Jira with Allure TestOps is configured:

image

Telegram notifications are configured:

image

Added video into tests run. Test run video example:

video

Thanks 🙏
💚 QA.GURU
💜 QA Sisters

About

Mobile part of the graduation project for the course QA.GURU (Python)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages