Giter Club home page Giter Club logo

verivox's Introduction

Introduction

This is the automation project for Verivox mobile application.

Project structure:

I am using Pytest strutucture for this project. So, here is an overview for my project:

verivox/
  pages/
      locators/
          general_locators.py
      base.py
      tarife.py
      vergleich.py
  setup/
      verivox.apk
  tests/
      test_verivox.py
  conftest.py
  README.md
  requirements.txt

๐Ÿ—‚ Brief explanation for each folder:

Pages >> PageObjects design pattern related, a .py file for each folder and its functionalities as well.

Setup >> Here we indicate apks to be used and also the the serial number of the device under test (DeviceId.py).

Tests >> Test flow for the execution.

Conftest >> Pytest file for all needed configurations.

README.md >> About the project and instructions of how to run it.

requirements.txt >> All the necessary resources to run this project.

๐ŸŽฏ I am using following resources here:

  • Python
  • Pytest
  • Appium-Python-Client (and some complements)

๐Ÿ›  How to install them?

Just run requirements.txt file by using following command on root path:

pip install -r requirements.txt

๐Ÿ“ Report execution

To perform execution and also generate a report for that, just use following command when calling pytest:

pytest --html=report.html  

After execution, a file called "report.html" will be generated on root path of the project. Click on it, and it will be opened as a text file. Execute it indicating a browser to render html file. Report will be displayed.

Also, a link will be displayed after execution, so you may access it directly from that.

Scenarios to be tested

Scenario 1: Verify the DSL calculator

GIVEN that I can open the app Home screen
WHEN I select the DSL calculator
AND I enter "030" for my area code
AND I select the "100 Mbit/s" bandwidth option
AND I click the "Jetzt vergleichen" button
THEN I should see a list of available tariffs based on my selection

Scenario 2: Load multiple tariff results

GIVEN the same tariff calculation criteria from scenario 1
WHEN I see the tariff search results screen
THEN I should see the total number of available tariffs listed in the Ermittelte Tarife section
WHEN I scroll to the end of the search results
THEN I should see only the first 20 tariffs displayed
WHEN I click on the button labeled "20 weitere Tarife laden"
THEN I should see the next 20 tariffs displayed
AND I can continue to load any additional tariffs until all tariffs have been displayed

Scenario 3: Load multiple tariff results

GIVEN the same tariff calculation criteria from scenario 1
AND I see the tariff search results screen
WHEN I click on any "Zum Angebot" button to select a tariff offer
THEN I should see the corresponding tariff offer screen for the selected tariff

Test Environment information

Application version:
3.3.1

Information about device under test:
Emulated device from Android Studio.
Model: Google Pixel 3.
Android version: 9

IDE for test development:
Pycharm

verivox's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.