Skip to content
A tool for running android and iOS appium tests in parallel across devices... U like it STAR it !
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github added stalebot config Jul 3, 2019
.settings fixed broken submodule Apr 22, 2016
caps support to run test on genymotion (#515) Jul 11, 2019
image Add files via upload Jul 11, 2019
src support to run test on genymotion (#515) Jul 11, 2019
.classpath Support ios-cloud support on sauce and browserstack (#503) Jun 29, 2019
.gitignore Major Refactor (#191) May 31, 2017
.gitmodules removed cucumber parallel submodule Apr 22, 2016
.project initial commit Aug 18, 2015
AndroidCalculator.apk Handle Parallel Test with Single server session (#222) Sep 12, 2017
LICENSE Create LICENSE Nov 7, 2016
README.md release version 11.0.0 Jul 17, 2019
VodQAReactNative.zip Ios parallel sim (#212) Aug 11, 2017
_config.yml Set theme jekyll-theme-hacker Mar 24, 2018
azure-pipelines.yml support to run test on genymotion (#515) Jul 11, 2019
bs_config.properties
config.properties default testng suiteName and category Mar 31, 2019
credentials.json #66 added support to take multiple credentails May 28, 2016
gm_config.properties support to run test on genymotion (#515) Jul 11, 2019
google-style.xml fixed checkstyle and code cleanup May 27, 2019
pom.xml release version 11.0.0 Jul 17, 2019
sauce_config.properties fixed checkstyle and code cleanup May 27, 2019

README.md


ATD


Appium Parallel Execution for Android and iOS on Real Devices

Open Source Love Join the chat at https://gitter.im/saikrishna321/AppiumTestDistribution Build Status Codacy Badge GitHub stars PRs Welcome GitHub forks

Thanks for support

ATD ATD

ATDGM

Add the below dependencies in your pom.xml (Master)

<dependency>
    <groupId>com.github.AppiumTestDistribution</groupId>
    <artifactId>AppiumTestDistribution</artifactId>
    <version>latest_commit</version>
</dependency>
<repositories>
        <repository>
            <id>jitpack.io</id>
            <url>https://jitpack.io</url>
        </repository>
</repositories>

Maven Release Version

 <dependency>
   <groupId>com.github.saikrishna321</groupId>
   <artifactId>AppiumTestDistribution</artifactId>
   <version>11.0.0</version>
 </dependency>

Prerequisites

ReportPortal

Add LISTENERS=com.epam.reportportal.testng.ReportPortalTestNGListener to config.properties to send data to report portal.

Sample Tests

Clone the project (https://github.com/saikrishna321/PageObjectPatternAppium) If your application is cross-platform and you end up building a PageObjectPattern Framework. Then you can also run those tests across Android and iOS devices connected to the same Mac OSX Host.

(e.g. If you have 3 Android and 3 iOS devices connected to the same machine, you will be able to execute these test parallel on both platforms)

Configure-tests-for-TestNG

Configure-tests-for-Cucumber

Configure-tests-for-Sauce

Configure-tests-for-Browserstack

Configure-tests-for-GenyMotionCloud

Customize Tests

Tips

Video log Prerequisites

Runner

Videos will be logged for failure tests
VIDEO_LOGS="true" mvn clean -Dtest=Runner test 

Credits

Thanks to

Reports

Your should see report file generated as ExtentReport.html under the target folder.

Parallel Run

ScreenShot

FAQ

Q. Can I automate application which I already have installed/ downloaded from App store?

A. With XCUITest framework, that is available from ios version 9.3, it's possible to execute Native (WebViews content would not be reachable) application using it's bundle id.

In order to get information about bundle id of pre-installed application:

  • connect device with application installed;
  • run ideviceinstaller -l or ideviceinstaller -l -u {udid of the device} in case if more then one device connected to the host;
  • in the list - find name of the application followed by its bundle id.

After that, instead of app capability bundleId should be used with application's bundle id as a value. Since Appium still needs WDA to be built and deployed on the real device - valid certificate and provisioning profile will be needed. More information could be found here

In case if test need to interact with WebViews and/or ios version has no support of XCUITest - Appium would need instruments application which is in debug mode, it will not work with any application which is not in debug mode. Read more about it here

Q. Is this framework supports to run multiple IOS simulators?

A. Yes, Currently Appium does support multiple simulators with latest 1.6.6.beta with Xcode9-beta.

Q. Unable to instruments application or instruments crashed on start up?

A. Below are few possible causes

  • (app/ipa) is not on debug mode.
  • (app) targeted to simulator will not work with real device and vice versa
  • Check device's developer option in settings.

Q. Unable to install application during automation?

A. A quick solution would try to install the application using "ideviceinstaller -i ipa_name", if that does not work, check app is built with the valid provisioning profile.

Q. Can I run tests on iOS app for which I have source code(e.g:"Wordpress") on real devices?

A. Yes, with a Valid provisioning profile this app can be installed on your device. (Note: The application must be signed with a valid developer certificate and your device should be added to the provisioning profile)

Organizations 💙

ThoughtWorks CeX Travelstart
ThoughtWorks Cex Travelstart
Jio India M800 Reward Gateway
Jio M800 Reward
dahmakan

License

GNU Public License version 3.0 AppiumTestDistribution is released under GNU Public License version 3.0

You can’t perform that action at this time.