|author||Eric Shieh <firstname.lastname@example.org>||Tue Jul 08 22:29:59 2014|
|committer||Eric Shieh <email@example.com>||Tue Jul 08 22:29:59 2014|
fix issue with running on multiple device types without setting a default timeout
The official Python client for the Appurify API.
pip install appurify-0.2.9.tar.gz
This will install any missing dependencies and add two executable scripts to your bin folder:
$ appurify-client.py -h $ appurify-tunnel.py -h
appurify-client.py --api-key $API_KEY --api-secret $API_SECRET \ --app-src $APP-SRC --app-test-type $TEST_TYPE --test-src $TEST_SRC --test-type $TEST_TYPE \ --device-type-id $DEVICE_TYPE_IDS --result-dir $RESULT_DIR
appurify-tunnel.py --api-key $API_KEY --api-secret $API_SECRET
To provide local/private network environment to your tests, they must be started after tunnel has been established.
API_KEY: Used for authentication
API_SECRET: Used for authentication
APP_SRC: The path or URL to the app binary (.ipa or .apk)
TEST_SRC: The path or URL where the test files are located
TEST_TYPE: Your test framework name e.g. calabash, ios_robot, ocunit, uiautomation. See constants.py for list of supported test types.
DEVICE_TYPE_IDS: A comma separated list of numbers representing the device type IDs you wish to use for your test
RESULT_DIR: The directory on your local machine where you want your results to be written.
In Jenkins create a new Execute Shell build step and upload your app using the Python wrapper as pictured below.
To facilitate error reporting, the client will report one of the following error codes on exit:
|0||Test completed with no exceptions or errors|
|1||Test completed normally but reported test failures|
|2||Test was aborted by the user or system|
|3||Test was aborted by the system because of timeout|
|4||Test could not be completed because the device could not be activated or reserved|
|5||Test could not execute because there was an error in the configuration or uploaded files|
|6||Test could not execute because the server rejected the provided credentials|
|7||Test could not execute because of other server/remote exception|
|8||Test could not execute because of an unexpected error in the client|
|9||Test got a connection error attempting to reach the server|
|10||The app could not be installed on the device (possibly due to incorrect build)|
|11||Test could not execute because device type is not found in user pool|
|12||Test could not execute because app is not built for device type|
|13||Device doesn't exist in users device pool|
|14||App is not compabtible with device specified.|
|15||Test reached timeout for grid session|
Found a bug or want to add a much needed feature? Go for it and send us the Pull Request!
--versionflag to print version and exit
--timeoutparameter to specify the desired timeout at runtime, or using the os environment variable
APPURIFY_API_TIMEOUT. Specify desired timeout in seconds.
network_headerstest type no longer requires app source