This project uses Python and Appium to automate and validate login functionality and video player controls in a mobile application.
- Introduction
- Prerequisites
- Installation and Setup
- Project Structure
- Running Tests
- Contributing
- License
- Acknowledgments
The project provides automated tests to ensure the robustness of the login feature and video player functionalities within the application. These tests include:
- Navigating to a live streaming section.
- Performing video player actions like play, pause, forward, reverse, mute, etc.
- Putting device in flight mode and test video player
To work with this project, you need the following installed on your local machine:
- Python 3.9.6
- pip (Python package installer)
- Appium server
- Java (for running Appium)
- Android SDK (if testing on Android)
- pytest
Follow these steps to set up the project:
-
Clone the repository:
git clone https://github.com/your-username/your-repo-name.git cd your-repo-name -
Create a virtual environment and activate it:
python3 -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
Install dependencies:
pip install -r requirements.txt
-
Start the Appium server:
Follow the Appium documentation to install and start the Appium server.
appium
-
Set up the Android device or emulator:
Ensure your device/emulator is connected and recognized by the system: Add your device name in config.capabilities.py { options.device_name = "YOUR DEVICE NAME" }
adb devices
.
├── helpers.py # Helper functions
├── login_page.py # Page Object Model (POM) for login page interactions
├── test_login.py # Test cases for login and video player functionalities
├── requirements.txt # List of dependencies
└── README.md # This readme file
Execute the tests using the following command:
pytestThis will automatically discover and run the tests in the test_login.py file.
Contributions are welcome! Please follow these steps to contribute:
- Fork the repository.
- Create a feature branch:
git checkout -b your-feature-name. - Commit your changes:
git commit -am 'Add some feature'. - Push to the branch:
git push origin your-feature-name. - Create a new Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.