/aquality-appium-mobile-java-template

Template project for aquality-appium-mobile-java library.

Primary LanguageJavaApache License 2.0Apache-2.0

Build Status Quality Gate Allure report

Aquality Appium Mobile Template Project

Template for aquality-appium-mobile-java library.

Project structure

  • aquality-appium-mobile-template - project related part with PageObjects, models and utilities
    • configuration/: classes that used to fetch project config from src/main/resources/environment folder
    • screens/: Page Objects
    • models/: classes that represent data models of the application under the test (POJO classes)
    • utilities/: util classes
    • src/main/resources/: resource files such as configurations and test data
  • aquality-appium-mobile-template-cucumber - Cucumber implementation of the tests
    • features/: Gherkin feature files with test scenarios
    • hooks/: Cucumber hooks
    • stepdefinitions/: step definition classes
    • transformations/: Cucumber data transformations
    • objectfactory/: DI container configuration

Configuration

settings.json file contains settings of Aquality Appium Mobile library.

allure.properties is a part of Allure Report configuration. See details here.

NOTE: Do not store application executable under source control as here. This is done only for demo purpose. For example, you can implement task in your CI system that will download and install necessary version of your application under the test. The delivery of application builds/updates may vary.

Tests execution

Scenarios from feature files can be executed with TestNG plugin for IDE (Intellij Idea, Eclipse) or with Maven command mvn clean test where you can specify all necessary arguments.

Reporting

Allure Framework is used as a reporting tool. Report data will be placed in target/allure-results/ folder (you can change it in allure.properties file).

Run maven command mvn allure:serve to build and open report in web browser. To generate report in CI use corresponding plugin for your system.

License

Library's source code is made available under the Apache 2.0 license.