parallel_appium 0.2.3 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|