parallel_appium 0.2.3 → 0.2.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/Gemfile.lock +1 -1
- data/README.md +101 -8
- data/lib/parallel_appium/version.rb +1 -1
- data/parallel_appium.gemspec +2 -2
- metadata +4 -4
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bf17a5ca78e99a96d96c2cebe5b78818ec73461e
|
4
|
+
data.tar.gz: 4970ff45c8246711c246c59eaa6eb6b79d44fc9c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 57021dd60442bc2bd00ae27c9a7d51aa0fa5229173c42f24acbafcb14064d5ab7b884f5ddbfbaa6cf16014557a166aff26d9dcdb426930727b4b10a48c38b534
|
7
|
+
data.tar.gz: f416e99c9f0201ac1197bdecd009108954b2c55ad397b3b9521cf9bfe5e53865fb217c85c1cb692908e98f8e38b8b1a68c1e301bbdea7955e4c5f5cecf2c8246
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -1,18 +1,29 @@
|
|
1
1
|
# parallel_appium
|
2
2
|
|
3
|
-
Single
|
3
|
+
Single/Distributed Parallel Cross-Platform mobile testing in Appium and RSpec for Android and iOS.
|
4
4
|
|
5
|
-
|
5
|
+
This project acts as a wrapper around a number of the configurations that have to be in place for
|
6
|
+
running appium tests with RSpec.
|
6
7
|
|
7
|
-
|
8
|
+
The Gem:
|
8
9
|
|
9
|
-
|
10
|
+
* Handles single platform testing
|
11
|
+
* Does cross-platform testing in Parallel
|
12
|
+
* Distributes tests across multiple simulator instances for a platform
|
10
13
|
|
11
|
-
|
14
|
+
Using the gem will speed up the time your entire test suite takes to execute and reducing your
|
15
|
+
project size by packaging a lot of code that is not context-specific.
|
12
16
|
|
17
|
+
This project depends on [Appium](http://appium.io/), please ensure you've installed and configured Appium
|
18
|
+
correctly before trying to work with this gem. [Appium Doctor](https://github.com/appium/appium-doctor) is a good way to
|
19
|
+
ensure you're good to go here
|
13
20
|
|
14
|
-
|
21
|
+
## Sample Project
|
22
|
+
|
23
|
+
To better demonstrate how to use the gem, a project automating Wordpress's mobile apps
|
24
|
+
is presented [here](https://github.com/JavonDavis/Wordpress-Open-Source-Automation-Ruby).
|
15
25
|
|
26
|
+
This project shows hands on how to integrate the gem and what it can do.
|
16
27
|
|
17
28
|
## Installation
|
18
29
|
|
@@ -29,10 +40,51 @@ And then execute:
|
|
29
40
|
Or install it yourself as:
|
30
41
|
|
31
42
|
$ gem install parallel_appium
|
43
|
+
|
44
|
+
## Getting setup
|
45
|
+
|
46
|
+
## Android
|
47
|
+
|
48
|
+
The gem uses the emulator command line tool that comes with your Android installation to manage a number of things. This
|
49
|
+
however requires a bit of configuration to work properly as by default it's not added to the system path and it's usually
|
50
|
+
not pointing to the correct one. Adding something like this(**in the specified order**) in your bash_profile will resolve
|
51
|
+
this
|
52
|
+
|
53
|
+
```
|
54
|
+
export ANDROID_HOME=/<path>/to/Android/sdk
|
55
|
+
export ANDROID_AVD_HOME=~/.android/avd
|
56
|
+
export PATH=$ANDROID_HOME/platform-tools:$PATH
|
57
|
+
export PATH=$ANDROID_HOME/tools:$PATH
|
58
|
+
export PATH=$ANDROID_HOME/tools/bin:$PATH
|
59
|
+
export PATH=$ANDROID_HOME/emulator:$PATH
|
60
|
+
```
|
61
|
+
|
62
|
+
## iOS
|
63
|
+
|
64
|
+
The main requirement here is to be running on a MAC machine, otherwise, there's nothing extra to do here
|
65
|
+
all the requirements for Appium and iOS hold true.
|
32
66
|
|
33
|
-
|
67
|
+
### Additional check
|
34
68
|
|
35
|
-
|
69
|
+
I also recommend an additional check to see if you're good to go for this project, simply execute
|
70
|
+
|
71
|
+
```bundle install --path vendor```
|
72
|
+
|
73
|
+
and then
|
74
|
+
|
75
|
+
```bundle exec rake parallel_appium:validate_android``` for Android
|
76
|
+
|
77
|
+
or
|
78
|
+
|
79
|
+
```bundle exec rake parallel_appium:validate_ios``` for iOS
|
80
|
+
|
81
|
+
|
82
|
+
The messages will indicate if there's any component necessary for the platform that's still not set up as yet.
|
83
|
+
|
84
|
+
|
85
|
+
## Usage
|
86
|
+
|
87
|
+
To get started with this gem in a project there's 3 lines of code you'll need to know to include within your project.
|
36
88
|
These lines handle the following.
|
37
89
|
|
38
90
|
### Starting the servers
|
@@ -74,6 +126,47 @@ and the library will set this up as needed,
|
|
74
126
|
This is all you need to get started with this library. There's a number of environment variables set by the library
|
75
127
|
for the purpose of writing easier cross platform tests. These are described in more detail below.
|
76
128
|
|
129
|
+
|
130
|
+
--------
|
131
|
+
|
132
|
+
Next you'll need to ensure the project the respective appium text files for the platform,
|
133
|
+
the gem will be looking for these files in the Project root. This file is used to load the capabilities of the driver
|
134
|
+
at launch.
|
135
|
+
|
136
|
+
Here's examples of what both could look like
|
137
|
+
|
138
|
+
### appium-ios.txt
|
139
|
+
|
140
|
+
```
|
141
|
+
[caps]
|
142
|
+
platformName = "ios"
|
143
|
+
deviceName = "iPhone Simulator"
|
144
|
+
platformVersion = "11.4"
|
145
|
+
app = "./apps/WordPress.app.zip"
|
146
|
+
automationName = "XCUITest"
|
147
|
+
bundleId = "org.wordpress"
|
148
|
+
|
149
|
+
[appium_lib]
|
150
|
+
wait = 2
|
151
|
+
```
|
152
|
+
|
153
|
+
### appium-android.txt
|
154
|
+
|
155
|
+
```
|
156
|
+
[caps]
|
157
|
+
platformName = "android"
|
158
|
+
deviceName = "Android Emulator"
|
159
|
+
platformVersion = "8.1.0"
|
160
|
+
app = "./apps/WordPress.apk"
|
161
|
+
appActivity = "org.wordpress.android.ui.WPLaunchActivity"
|
162
|
+
appPackage = "org.wordpress.android"
|
163
|
+
|
164
|
+
[appium_lib]
|
165
|
+
wait = 2
|
166
|
+
```
|
167
|
+
|
168
|
+
The vales are expected to change to tailor to the host machine.
|
169
|
+
|
77
170
|
### Environment variables
|
78
171
|
|
79
172
|
|
data/parallel_appium.gemspec
CHANGED
@@ -3,11 +3,11 @@ lib = File.expand_path('lib', __dir__)
|
|
3
3
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
4
|
require 'parallel_appium/version'
|
5
5
|
|
6
|
-
summary = '
|
6
|
+
summary = 'Multi-threaded mobile testing with Appium, Selenium and Rspec'
|
7
7
|
description = 'Through the creation of multiple environments
|
8
8
|
this library allows for the distribution of multiple tests across 1 or more
|
9
9
|
devices or simulators. The library uses Selenium Grid and Appium to launch a
|
10
|
-
specified number of web driver and appium instances to
|
10
|
+
specified number of web driver and appium instances to distribute the RSpec test load
|
11
11
|
across available devices'
|
12
12
|
|
13
13
|
Gem::Specification.new do |spec|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: parallel_appium
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Javon Davis
|
@@ -36,7 +36,7 @@ cert_chain:
|
|
36
36
|
pjBkMT4ow4ZhVgBKPDT2jh74b8g2rIDSbkJIj0lf35WXqJqZzseabGPpTbtzJEap
|
37
37
|
HIrd7mPILLe3
|
38
38
|
-----END CERTIFICATE-----
|
39
|
-
date: 2018-07-
|
39
|
+
date: 2018-07-13 00:00:00.000000000 Z
|
40
40
|
dependencies:
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: appium_lib
|
@@ -140,7 +140,7 @@ description: |-
|
|
140
140
|
Through the creation of multiple environments
|
141
141
|
this library allows for the distribution of multiple tests across 1 or more
|
142
142
|
devices or simulators. The library uses Selenium Grid and Appium to launch a
|
143
|
-
specified number of web driver and appium instances to
|
143
|
+
specified number of web driver and appium instances to distribute the RSpec test load
|
144
144
|
across available devices
|
145
145
|
email:
|
146
146
|
- javonldavis14@gmail.com
|
@@ -196,5 +196,5 @@ rubyforge_project:
|
|
196
196
|
rubygems_version: 2.6.14
|
197
197
|
signing_key:
|
198
198
|
specification_version: 4
|
199
|
-
summary:
|
199
|
+
summary: Multi-threaded mobile testing with Appium, Selenium and Rspec
|
200
200
|
test_files: []
|
metadata.gz.sig
CHANGED
Binary file
|