appium_lib_core 5.1.0 → 5.1.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,298 +0,0 @@
1
- # jobs for functional test
2
- parameters:
3
- vmImage: 'macOS-10.15'
4
- vmImageForIOS: 'macOS-10.15'
5
- xcodeForIOS: 12.2
6
- xcodeForTVOS: 12.2
7
- androidSDK: 29 # API Level 30 emulators are more unstable than 29
8
- appiumVersion: 'beta'
9
- ignoreVersionSkip: true
10
- CI: true
11
-
12
-
13
- jobs:
14
- # Run unit tests on different Node versions
15
- - job: func_test_ios_base
16
- pool:
17
- vmImage: ${{ parameters.vmImageForIOS }}
18
- variables:
19
- CI: ${{ parameters.ci }}
20
- IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
21
- APPIUM_VERSION: ${{ parameters.appiumVersion }}
22
- steps:
23
- - template: ./functional/ios_setup.yml
24
- parameters:
25
- xcodeVersion: ${{ parameters.xcodeForIOS }}
26
- - template: ./functional/run_appium.yml
27
- - script: bundle exec rake test:func:ios TESTS=test/functional/ios/driver_test.rb,test/functional/ios/patch_test.rb
28
- displayName: Run tests func_test_ios_base
29
- - template: ./functional/publish_test_result.yml
30
-
31
- - job: func_test_ios_webdriver1
32
- pool:
33
- vmImage: ${{ parameters.vmImageForIOS }}
34
- variables:
35
- CI: ${{ parameters.ci }}
36
- IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
37
- APPIUM_VERSION: ${{ parameters.appiumVersion }}
38
- steps:
39
- - template: ./functional/ios_setup.yml
40
- parameters:
41
- xcodeVersion: ${{ parameters.xcodeForIOS }}
42
- - template: ./functional/run_appium.yml
43
- - script: bundle exec rake test:func:ios TESTS=test/functional/ios/webdriver/create_session_test.rb,test/functional/ios/webdriver/w3c_actions_test.rb
44
- displayName: Run tests func_test_ios_webdriver1
45
- - template: ./functional/publish_test_result.yml
46
-
47
- - job: func_test_ios_webdriver2
48
- pool:
49
- vmImage: ${{ parameters.vmImageForIOS }}
50
- variables:
51
- CI: ${{ parameters.ci }}
52
- IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
53
- APPIUM_VERSION: ${{ parameters.appiumVersion }}
54
- steps:
55
- - template: ./functional/ios_setup.yml
56
- parameters:
57
- xcodeVersion: ${{ parameters.xcodeForIOS }}
58
- - template: ./functional/run_appium.yml
59
- - script: bundle exec rake test:func:ios TESTS=test/functional/ios/webdriver/device_test.rb
60
- displayName: Run tests func_test_ios_webdriver2
61
- - template: ./functional/publish_test_result.yml
62
-
63
- - job: func_test_ios_ios1
64
- pool:
65
- vmImage: ${{ parameters.vmImageForIOS }}
66
- variables:
67
- CI: ${{ parameters.ci }}
68
- IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
69
- APPIUM_VERSION: ${{ parameters.appiumVersion }}
70
- steps:
71
- - template: ./functional/ios_setup.yml
72
- parameters:
73
- xcodeVersion: ${{ parameters.xcodeForIOS }}
74
- - template: ./functional/run_appium.yml
75
- - script: bundle exec rake test:func:ios TESTS=test/functional/ios/ios/device_test.rb
76
- displayName: Run tests func_test_ios_ios1
77
- - template: ./functional/publish_test_result.yml
78
-
79
- - job: func_test_ios_ios2
80
- pool:
81
- vmImage: ${{ parameters.vmImageForIOS }}
82
- variables:
83
- CI: ${{ parameters.ci }}
84
- IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
85
- APPIUM_VERSION: ${{ parameters.appiumVersion }}
86
- steps:
87
- - template: ./functional/ios_setup.yml
88
- parameters:
89
- xcodeVersion: ${{ parameters.xcodeForIOS }}
90
- - template: ./functional/run_appium.yml
91
- - script: bundle exec rake test:func:ios TESTS=test/functional/ios/ios/device_wda_attachment_test.rb,test/functional/ios/ios/search_context_test.rb
92
- displayName: Run tests func_test_ios_ios2
93
- - template: ./functional/publish_test_result.yml
94
-
95
- - job: func_test_ios_ios3
96
- pool:
97
- vmImage: ${{ parameters.vmImageForIOS }}
98
- variables:
99
- CI: ${{ parameters.ci }}
100
- IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
101
- APPIUM_VERSION: ${{ parameters.appiumVersion }}
102
- steps:
103
- - template: ./functional/ios_setup.yml
104
- parameters:
105
- xcodeVersion: ${{ parameters.xcodeForIOS }}
106
- - script: brew install ffmpeg && brew tap wix/brew && brew install applesimutils
107
- displayName: Install ffmpeg and applesimutils
108
- - template: ./functional/run_appium.yml
109
- - script: bundle exec rake test:func:ios TESTS=test/functional/ios/ios/mjpeg_server_test.rb,test/functional/ios/ios/mobile_commands_test.rb
110
- displayName: Run tests func_test_ios_ios3
111
- - template: ./functional/publish_test_result.yml
112
-
113
- - job: func_test_ios_tvos
114
- pool:
115
- vmImage: ${{ parameters.vmImage }}
116
- variables:
117
- CI: ${{ parameters.ci }}
118
- IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
119
- APPIUM_VERSION: ${{ parameters.appiumVersion }}
120
- steps:
121
- - template: ./functional/ios_setup.yml
122
- parameters:
123
- xcodeVersion: ${{ parameters.xcodeForTVOS }}
124
- - template: ./functional/run_appium.yml
125
- - script: bundle exec rake test:func:ios TESTS=test/functional/ios/tv_driver_test.rb
126
- displayName: Run tests func_test_ios_tvos
127
- - template: ./functional/publish_test_result.yml
128
-
129
- # Skip since opencv4nodejs fails to install on the macOS instance
130
- # - job: func_test_ios_opencv
131
- # pool:
132
- # vmImage: ${{ parameters.vmImageForIOS }}
133
- # variables:
134
- # CI: ${{ parameters.ci }}
135
- # IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
136
- # APPIUM_VERSION: ${{ parameters.appiumVersion }}
137
- # steps:
138
- # - template: ./functional/ios_setup.yml
139
- # parameters:
140
- # xcodeVersion: ${{ parameters.xcodeForIOS }}
141
- # - template: ./functional/run_appium.yml
142
- # - script: npm install -g opencv4nodejs@5.1.0
143
- # displayName: Install opencv4nodejs@5.1.0
144
- # - script: bundle exec rake test:func:ios test/functional/ios/ios/image_comparison_test.rb
145
- # displayName: Run tests
146
- # - template: ./functional/publish_test_result.yml
147
-
148
-
149
- - job: func_test_android_base
150
- pool:
151
- vmImage: ${{ parameters.vmImage }}
152
- variables:
153
- CI: ${{ parameters.ci }}
154
- ANDROID_SDK_VERSION: ${{ parameters.androidSDK }}
155
- IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
156
- APPIUM_VERSION: ${{ parameters.appiumVersion }}
157
- strategy:
158
- matrix:
159
- uiautomator2:
160
- AUTOMATION_NAME_DROID: 'uiautomator2'
161
- espresso:
162
- AUTOMATION_NAME_DROID: 'espresso'
163
- steps:
164
- - template: ./functional/android_setup.yml
165
- - template: ./functional/run_appium.yml
166
- - script: bundle exec rake test:func:android TESTS=test/functional/android/driver_test.rb,test/functional/android/patch_test.rb
167
- displayName: Run tests func_test_android_base
168
- - template: ./functional/publish_test_result.yml
169
-
170
- - job: func_test_android_webdriver
171
- pool:
172
- vmImage: ${{ parameters.vmImage }}
173
- variables:
174
- CI: ${{ parameters.ci }}
175
- ANDROID_SDK_VERSION: ${{ parameters.androidSDK }}
176
- IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
177
- APPIUM_VERSION: ${{ parameters.appiumVersion }}
178
- strategy:
179
- matrix:
180
- uiautomator2:
181
- AUTOMATION_NAME_DROID: 'uiautomator2'
182
- espresso:
183
- AUTOMATION_NAME_DROID: 'espresso'
184
- steps:
185
- - template: ./functional/android_setup.yml
186
- - template: ./functional/run_appium.yml
187
- - script: bundle exec rake test:func:android TESTS=test/functional/android/webdriver/create_session_test.rb,test/functional/android/webdriver/device_test.rb,test/functional/android/webdriver/w3c_actions_test.rb
188
- displayName: Run tests func_test_android_webdriver
189
- - template: ./functional/publish_test_result.yml
190
-
191
- - job: func_test_android_android1
192
- pool:
193
- vmImage: ${{ parameters.vmImage }}
194
- variables:
195
- CI: ${{ parameters.ci }}
196
- ANDROID_SDK_VERSION: ${{ parameters.androidSDK }}
197
- IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
198
- APPIUM_VERSION: ${{ parameters.appiumVersion }}
199
- strategy:
200
- matrix:
201
- uiautomator2:
202
- AUTOMATION_NAME_DROID: 'uiautomator2'
203
- espresso:
204
- AUTOMATION_NAME_DROID: 'espresso'
205
- steps:
206
- - template: ./functional/android_setup.yml
207
- - template: ./functional/run_appium.yml
208
- - script: bundle exec rake test:func:android TESTS=test/functional/android/android/device_test.rb
209
- displayName: Run tests func_test_android_android1
210
- - template: ./functional/publish_test_result.yml
211
-
212
- - job: func_test_android_android2
213
- pool:
214
- vmImage: ${{ parameters.vmImage }}
215
- variables:
216
- CI: ${{ parameters.ci }}
217
- ANDROID_SDK_VERSION: ${{ parameters.androidSDK }}
218
- IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
219
- APPIUM_VERSION: ${{ parameters.appiumVersion }}
220
- strategy:
221
- matrix:
222
- uiautomator2:
223
- AUTOMATION_NAME_DROID: 'uiautomator2'
224
- espresso:
225
- AUTOMATION_NAME_DROID: 'espresso'
226
- steps:
227
- - template: ./functional/android_setup.yml
228
- - template: ./functional/run_appium.yml
229
- - script: bundle exec rake test:func:android TESTS=test/functional/android/android/search_context_test.rb,test/functional/android/android/mjpeg_server_test.rb
230
- displayName: Run tests func_test_android_android2
231
- - template: ./functional/publish_test_result.yml
232
-
233
- - job: func_test_android_android3
234
- pool:
235
- vmImage: ${{ parameters.vmImage }}
236
- variables:
237
- CI: ${{ parameters.ci }}
238
- ANDROID_SDK_VERSION: ${{ parameters.androidSDK }}
239
- IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
240
- APPIUM_VERSION: ${{ parameters.appiumVersion }}
241
- strategy:
242
- matrix:
243
- uiautomator2:
244
- AUTOMATION_NAME_DROID: 'uiautomator2'
245
- espresso:
246
- AUTOMATION_NAME_DROID: 'espresso'
247
- steps:
248
- - template: ./functional/android_setup.yml
249
- - template: ./functional/run_appium.yml
250
- - script: bundle exec rake test:func:android TESTS=test/functional/android/android/device_data_test.rb
251
- displayName: Run tests func_test_android_android3
252
- - template: ./functional/publish_test_result.yml
253
-
254
- - job: func_test_android_mobile_command_espresso
255
- pool:
256
- vmImage: ${{ parameters.vmImage }}
257
- variables:
258
- CI: ${{ parameters.ci }}
259
- ANDROID_SDK_VERSION: ${{ parameters.androidSDK }}
260
- AUTOMATION_NAME_DROID: espresso
261
- IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
262
- APPIUM_VERSION: ${{ parameters.appiumVersion }}
263
- strategy:
264
- matrix:
265
- uiautomator2:
266
- AUTOMATION_NAME_DROID: 'uiautomator2'
267
- espresso:
268
- AUTOMATION_NAME_DROID: 'espresso'
269
- steps:
270
- - template: ./functional/android_setup.yml
271
- - template: ./functional/run_appium.yml
272
- - script: bundle exec rake test:func:android TESTS=test/functional/android/android/mobile_commands_test.rb
273
- displayName: Run tests func_test_android_mobile_command_espresso
274
- - template: ./functional/publish_test_result.yml
275
-
276
- # Skip since opencv4nodejs fails to install on the macOS instance
277
- # - job: func_test_android_opencv
278
- # pool:
279
- # vmImage: ${{ parameters.vmImage }}
280
- # variables:
281
- # CI: ${{ parameters.ci }}
282
- # ANDROID_SDK_VERSION: ${{ parameters.androidSDK }}
283
- # IGNORE_VERSION_SKIP: ${{ parameters.ignoreVersionSkip }}
284
- # APPIUM_VERSION: ${{ parameters.appiumVersion }}
285
- # strategy:
286
- # matrix:
287
- # uiautomator2:
288
- # AUTOMATION_NAME_DROID: 'uiautomator2'
289
- # espresso:
290
- # AUTOMATION_NAME_DROID: 'espresso'
291
- # steps:
292
- # - template: ./functional/android_setup.yml
293
- # - template: ./functional/run_appium.yml
294
- # - script: npm install -g opencv4nodejs@5.1.0
295
- # displayName: Install opencv4nodejs@5.1.0
296
- # - script: bundle exec rake test:func:android TESTS=test/functional/android/android/image_comparison_test.rb
297
- # displayName: Run tests func_test_android_opencv
298
- # - template: ./functional/publish_test_result.yml
@@ -1,34 +0,0 @@
1
- # Mobile Command
2
-
3
- Appium has `mobile:` command.
4
- We can invoke them via `execute_script` command with `mobile:` arguments.
5
-
6
- - root:
7
- - https://github.com/appium/appium/blob/master/commands-yml/commands/mobile-command.yml
8
- - Android:
9
- - https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android
10
- - iOS:
11
- - https://github.com/appium/appium/tree/master/docs/en/writing-running-appium/ios
12
-
13
-
14
- ```ruby
15
- # Android shell : https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/android-shell.md
16
- args = { command: 'echo', args: 'list' }
17
- @driver.execute_script 'mobile: shell', args # Run `adb shell echo 'list'`
18
-
19
- # iOS performance : https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/ios/ios-xctest-performance.md
20
- args = { timeout: 60 * 1000, profileName: 'Activity Monitor' }
21
- @driver.execute_script 'mobile: startPerfRecord', args
22
-
23
- @driver.execute_script 'mobile: stopPerfRecord', { profileName: 'Activity Monitor' }
24
- ```
25
-
26
- Mobile commands return their error messages. As a selenium client, it usually handles as unknown error.
27
- To handle it, we would recommend you to handle the error based on the error message.
28
-
29
- ```ruby
30
- error = assert_raises ::Selenium::WebDriver::Error::UnknownError do
31
- @driver.execute_script 'mobile: scrollToPage', { element: el.id, scrollToPage: -100 }
32
- end
33
- assert error.message.include? 'be a non-negative integer'
34
- ```