So, Appium works now and I can close the issue complaining that Appium
doesn't work?

On Wed, Jan 20, 2016, 9:12 AM Alexander Sorokin (Akvelon) <
v-als...@microsoft.com> wrote:

> Hi guys.
>
> Lately I've been working on improving automated test coverage of core
> plugins. Work is still in progress but there are some results that I want
> to share.
>
> The idea is to use Appium framework to automate core plugins manual tests
> in mobilespec app. I've implemented a new command for Medic. It starts an
> Appium server instance, looks for the tests, then runs the mobilespec app
> from the specified folder and runs the tests.
>
> Appium supports only iOS and Android platforms so there are tests only for
> these two, but we can extend the coverage of other platforms using
> different ui testing frameworks.
>
> The tests themselves are written for jasmine-node and are using "wd"
> module to connect to Appium server. They are currently located in plugin
> repos. Here's some links:
>
> Test runner (medic):
> https://github.com/apache/cordova-medic/pull/70
>
> Battery Status tests:
> https://github.com/apache/cordova-plugin-battery-status/pull/29
>
> Camera tests:
> https://github.com/apache/cordova-plugin-camera/pull/156
>
> Contacts tests:
> https://github.com/apache/cordova-plugin-contacts/pull/101
>
> Device Motion tests:
> https://github.com/apache/cordova-plugin-device-motion/pull/39
>
> Tests can run on both real devices and emulators/simulators.
> While developing the tests, I've been using Android emulator and device
> with API level 19 (Android 4.4, KitKat) and iOS device (iPad 2) with iOS
> 7.1 so the tests can fail on other devices/emulators. I'm going to add the
> support for other versions/devices as well as implement more Appium tests
> for other plugins in the nearest future.
>
> To run the tests:
> 1. Clone cordova-medic repo
> 2. Clone tested plugins repos (appium tests are there, in appium-tests
> folder)
> 3. Create mobile spec app with tested plugins:
>        node cordova-mobile-spec/createmobilespec/createmobilespec.js
> mobspec-android --android --plugins "cordova-plugin-battery-status
> cordova-plugin-camera cordova-plugin-contacts cordova-plugin-device-motion"
> 4. Build the mobilespec app:
>        cd mobspec-android && cordova build
> 5. Start the emulator/connect the device
> 6. Run the tests using command:
> node cordova-medic/medic/medic.js appium --app [mobilespec folder]
> --platform [platform] --device-name [device/emulator name]
> --platform-version [platform version] --plugins [list of plugins to test
> separated by space] [--device (only if running on a real device)] --udid
> [iOS real devices only, device UDID]
> Every argument except --platform is optional. On iOS, --udid is mandatory
> if running on real device.
>
> For example, android emulator:
> node cordova-medic/medic/medic.js appium --app mobspec-android --platform
> android --device-name appium --platform-version 19 --plugins
> "cordova-plugin-device-motion"
>
> Android device:
> node cordova-medic/medic/medic.js appium --platform android --app
> mobspec-android --plugins "cordova-plugin-contacts" --device
>
> iOS simulator:
> node cordova-medic/medic/medic.js appium --app mobspec-ios --platform ios
> --plugins "cordova-plugin-contacts"
>
> iOS device:
> node cordova-medic/medic/medic.js appium --app mobspec-ios --platform ios
> --device-name "iPad 2" --udid [UDID here] --plugins "cordova-plugin-camera
> cordova-plugin-contacts"
>
> I hope we will be running these tests along with other medic tests that
> are now running on CI in future:
> http://ci.cordova.io/
>
> Please take a look and say what you think.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
> For additional commands, e-mail: dev-h...@cordova.apache.org
>
>

Reply via email to