Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/markomilenkovic546/todo-android-app-test-automation
Android App Test Automation | WebdriverIO + Appium
https://github.com/markomilenkovic546/todo-android-app-test-automation
android-app appium javascript test-automation webdriverio
Last synced: 3 days ago
JSON representation
Android App Test Automation | WebdriverIO + Appium
- Host: GitHub
- URL: https://github.com/markomilenkovic546/todo-android-app-test-automation
- Owner: markomilenkovic546
- Created: 2023-08-11T13:03:57.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-09-11T21:13:11.000Z (over 1 year ago)
- Last Synced: 2024-11-20T16:27:51.074Z (2 months ago)
- Topics: android-app, appium, javascript, test-automation, webdriverio
- Language: JavaScript
- Homepage:
- Size: 6.36 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# TODO List - Android App Test Automation
## Overview
This project is designed to automate the testing of a TODO list Android application by leveraging the WebdriverIO and Appium frameworks. It focuses on the testing of two main features: List Management and Task Management.
## Prerequisites
Before running the tests, ensure that you have the following prerequisites installed on your local machine:
- **Java Development Kit**: You will need Java Development Kit (JDK) installed on your machine, as Appium is a Java-based automation tool.
- **Appium Server**: Install and set up the Appium server. [Appium's official website](http://appium.io/).
- **Virtual Device**: Set up an Android virtual device for testing according to capabilities in `wdio.config.js` . You can use tools like Android Emulator or Genymotion to create virtual devices.
- **UIAutomator2**: Ensure that UIAutomator2 is configured for your virtual device. This is necessary for interacting with the Android UI elements.
- To install the necessary dependencies for your project, you should run the following command in your project's root directory: `npm install`
## Project Structure
- **`screens` folder**: Contains classes where the screen object model is created for the application screens.
- **`e2e-specs` folder**: Contains spec files that contain end-to-end tests.
- **`custom-commands` folder**: Contains custom commands.
- **`fixtures` folder**: Contains test data.
## Running Tests
To run specific test scripts, use the following NPM scripts:
- To run the List Management tests:
`npm run list-management-spec`- To run the Task Management tests:
`npm run task-management-spec`- To run all spec files:
`npx wdio wdio.conf.js`# Generating and Viewing Allure Test Run Reports
Once the the test run is finished, in order to generate test run report and run local server to open report in the browser, run the command `allure generate allure-results && allure open`