toolium 3.8.3__tar.gz → 3.9.0.dev0__tar.gz
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.
- {toolium-3.8.3 → toolium-3.9.0.dev0}/CHANGELOG.rst +1078 -1061
- {toolium-3.8.3 → toolium-3.9.0.dev0}/LICENSE +202 -202
- {toolium-3.8.3 → toolium-3.9.0.dev0}/MANIFEST.in +7 -7
- {toolium-3.8.3/toolium.egg-info → toolium-3.9.0.dev0}/PKG-INFO +174 -175
- {toolium-3.8.3 → toolium-3.9.0.dev0}/README.rst +112 -112
- toolium-3.9.0.dev0/VERSION +1 -0
- {toolium-3.8.3 → toolium-3.9.0.dev0}/pyproject.toml +149 -149
- {toolium-3.8.3 → toolium-3.9.0.dev0}/requirements.txt +8 -8
- {toolium-3.8.3 → toolium-3.9.0.dev0}/requirements_ai.txt +4 -4
- {toolium-3.8.3 → toolium-3.9.0.dev0}/requirements_dev.txt +12 -12
- {toolium-3.8.3 → toolium-3.9.0.dev0}/setup.cfg +7 -7
- {toolium-3.8.3 → toolium-3.9.0.dev0}/setup.py +27 -27
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/behave/env_utils.py +363 -322
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/behave/environment.py +338 -338
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/config_driver.py +532 -532
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/config_driver_playwright.py +290 -290
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/config_files.py +68 -68
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/config_parser.py +222 -222
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/driver_wrapper.py +471 -471
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/driver_wrappers_pool.py +414 -414
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/jira.py +190 -190
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/__init__.py +58 -58
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/button_page_element.py +46 -46
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/checkbox_page_element.py +53 -53
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/group_page_element.py +86 -86
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/input_radio_page_element.py +42 -42
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/input_text_page_element.py +77 -77
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/link_page_element.py +28 -28
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/page_element.py +260 -260
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/page_elements.py +185 -185
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/playwright/__init__.py +22 -22
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/playwright/button_page_element.py +35 -35
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/playwright/input_text_page_element.py +68 -68
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/playwright/page_element.py +64 -64
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/playwright/text_page_element.py +27 -27
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/select_page_element.py +46 -46
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageelements/text_page_element.py +28 -28
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageobjects/common_object.py +124 -124
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageobjects/mobile_page_object.py +49 -49
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageobjects/page_object.py +88 -88
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pytest_fixtures.py +62 -62
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/resources/VisualTests.css +82 -82
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/resources/VisualTests.js +23 -23
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/resources/VisualTestsTemplate.html +28 -28
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/selenoid.py +296 -296
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/test_cases.py +208 -219
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/ai_utils/accuracy.py +306 -306
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/ai_utils/ai_agent.py +128 -128
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/ai_utils/evaluate_answer.py +244 -244
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/ai_utils/openai.py +90 -90
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/ai_utils/prompt_injection.py +68 -68
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/ai_utils/spacy.py +100 -100
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/ai_utils/text_analysis.py +117 -117
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/ai_utils/text_readability.py +102 -102
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/ai_utils/text_similarity.py +178 -178
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/data_generator.py +133 -133
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/dataset.py +951 -944
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/download_files.py +243 -243
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/driver_utils.py +433 -433
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/driver_wait_utils.py +366 -366
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/path_utils.py +52 -52
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/poeditor.py +346 -346
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/visual_test.py +502 -502
- {toolium-3.8.3 → toolium-3.9.0.dev0/toolium.egg-info}/PKG-INFO +174 -175
- toolium-3.8.3/VERSION +0 -1
- {toolium-3.8.3 → toolium-3.9.0.dev0}/requirements_playwright.txt +0 -0
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/__init__.py +0 -0
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/behave/__init__.py +0 -0
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/pageobjects/__init__.py +0 -0
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/__init__.py +0 -0
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium/utils/ai_utils/__init__.py +0 -0
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium.egg-info/SOURCES.txt +0 -0
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium.egg-info/dependency_links.txt +0 -0
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium.egg-info/requires.txt +0 -0
- {toolium-3.8.3 → toolium-3.9.0.dev0}/toolium.egg-info/top_level.txt +0 -0
|
@@ -1,1061 +1,1078 @@
|
|
|
1
|
-
Toolium Changelog
|
|
2
|
-
=================
|
|
3
|
-
|
|
4
|
-
v3.
|
|
5
|
-
------
|
|
6
|
-
|
|
7
|
-
*Release date:
|
|
8
|
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
12
|
-
|
|
13
|
-
v3.8.
|
|
14
|
-
------
|
|
15
|
-
|
|
16
|
-
*Release date: 2026-
|
|
17
|
-
|
|
18
|
-
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
-
|
|
27
|
-
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
- Add
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
- Add
|
|
77
|
-
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
v3.
|
|
104
|
-
------
|
|
105
|
-
|
|
106
|
-
*Release date:
|
|
107
|
-
|
|
108
|
-
-
|
|
109
|
-
|
|
110
|
-
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
-
|
|
132
|
-
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
- Fix
|
|
152
|
-
|
|
153
|
-
v3.1.
|
|
154
|
-
------
|
|
155
|
-
|
|
156
|
-
*Release date: 2024-
|
|
157
|
-
|
|
158
|
-
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
-
|
|
228
|
-
-
|
|
229
|
-
-
|
|
230
|
-
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
-
|
|
240
|
-
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
- Fix
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
-
|
|
275
|
-
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
-
|
|
314
|
-
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
-
|
|
391
|
-
- Move
|
|
392
|
-
- Fix
|
|
393
|
-
-
|
|
394
|
-
|
|
395
|
-
v1.9.
|
|
396
|
-
------
|
|
397
|
-
|
|
398
|
-
*Release date: 2021-
|
|
399
|
-
|
|
400
|
-
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
*
|
|
420
|
-
|
|
421
|
-
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
*
|
|
430
|
-
|
|
431
|
-
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
-
|
|
462
|
-
-
|
|
463
|
-
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
-
|
|
480
|
-
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
-
|
|
542
|
-
|
|
543
|
-
v1.5.
|
|
544
|
-
------
|
|
545
|
-
|
|
546
|
-
*Release date: 2019-
|
|
547
|
-
|
|
548
|
-
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
-
|
|
558
|
-
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
-
|
|
576
|
-
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
-
|
|
593
|
-
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
- Fix
|
|
609
|
-
- Fix
|
|
610
|
-
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
-
|
|
623
|
-
-
|
|
624
|
-
- Add
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
*
|
|
638
|
-
|
|
639
|
-
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
v1.2.
|
|
652
|
-
------
|
|
653
|
-
|
|
654
|
-
*Release date: 2017-
|
|
655
|
-
|
|
656
|
-
- Fix error
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
*
|
|
664
|
-
|
|
665
|
-
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
- Fix error
|
|
674
|
-
- Fix
|
|
675
|
-
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
-
|
|
732
|
-
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
-
|
|
762
|
-
-
|
|
763
|
-
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
-
|
|
778
|
-
-
|
|
779
|
-
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
-
|
|
795
|
-
|
|
796
|
-
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
- Fix page
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
- Fix
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
-
|
|
873
|
-
-
|
|
874
|
-
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
- Allow to set
|
|
897
|
-
|
|
898
|
-
New config section [
|
|
899
|
-
|
|
900
|
-
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
-
|
|
918
|
-
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
-
|
|
927
|
-
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
-
|
|
977
|
-
|
|
978
|
-
v0.8.
|
|
979
|
-
------
|
|
980
|
-
|
|
981
|
-
*Release date: 2015-
|
|
982
|
-
|
|
983
|
-
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
-
|
|
994
|
-
|
|
995
|
-
v0.8
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
*Release date: 2015-
|
|
999
|
-
|
|
1000
|
-
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
v0.
|
|
1024
|
-
----
|
|
1025
|
-
|
|
1026
|
-
*Release date: 2014-12-
|
|
1027
|
-
|
|
1028
|
-
-
|
|
1029
|
-
-
|
|
1030
|
-
|
|
1031
|
-
v0.
|
|
1032
|
-
----
|
|
1033
|
-
|
|
1034
|
-
*Release date: 2014-
|
|
1035
|
-
|
|
1036
|
-
-
|
|
1037
|
-
-
|
|
1038
|
-
-
|
|
1039
|
-
|
|
1040
|
-
v0.
|
|
1041
|
-
----
|
|
1042
|
-
|
|
1043
|
-
*Release date: 2014-
|
|
1044
|
-
|
|
1045
|
-
-
|
|
1046
|
-
- Add
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1
|
+
Toolium Changelog
|
|
2
|
+
=================
|
|
3
|
+
|
|
4
|
+
v3.9.0
|
|
5
|
+
------
|
|
6
|
+
|
|
7
|
+
*Release date: In development*
|
|
8
|
+
|
|
9
|
+
- Add support for Python 3.14
|
|
10
|
+
- Remove Python 3.10 support (Python 3.10 reaches end of life in October 2026)
|
|
11
|
+
- Fix scenario status in Allure report when an action before the feature fails: scenarios are now reported as failed instead of skipped.
|
|
12
|
+
|
|
13
|
+
v3.8.4
|
|
14
|
+
------
|
|
15
|
+
|
|
16
|
+
*Release date: 2026-10-19*
|
|
17
|
+
|
|
18
|
+
- Add support for reading files with UTF-8 encoding using the `[FILE_UTF8:xxxx]` replacement.
|
|
19
|
+
- Fix package metadata in `pyproject.toml` to use SPDX license syntax, remove the deprecated license classifier and include `toolium.resources` in the package configuration.
|
|
20
|
+
|
|
21
|
+
v3.8.3
|
|
22
|
+
------
|
|
23
|
+
|
|
24
|
+
*Release date: 2026-07-15*
|
|
25
|
+
|
|
26
|
+
- Fix `openai_request` to rename `azure_api_key` and `openai_api_key` parameters to `api_key` to avoid errors when Azure and OpenAI are created.
|
|
27
|
+
- Add `openai_temperature` and `azure_temperature` parameters to be configurable in `toolium.cfg` file to set the temperature for OpenAI and Azure requests.
|
|
28
|
+
- Generalize documentation for `openai_request` configuration.
|
|
29
|
+
|
|
30
|
+
v3.8.2
|
|
31
|
+
------
|
|
32
|
+
|
|
33
|
+
*Release date: 2026-07-13*
|
|
34
|
+
|
|
35
|
+
- Update the `openai_request` method to centralize logic and allow loading the configuration from `toolium.cfg` file.
|
|
36
|
+
|
|
37
|
+
v3.8.1
|
|
38
|
+
------
|
|
39
|
+
|
|
40
|
+
*Release date: 2026-04-15*
|
|
41
|
+
|
|
42
|
+
- Add token usage tracking to OpenAI requests
|
|
43
|
+
- Add pytest and unittest runners documentation in `Docs <http://toolium.readthedocs.io/en/latest/tests_runners_integration.html>`_
|
|
44
|
+
- Fix key error when a scenario with accuracy tag is skipped
|
|
45
|
+
|
|
46
|
+
v3.8.0
|
|
47
|
+
------
|
|
48
|
+
|
|
49
|
+
*Release date: 2026-03-13*
|
|
50
|
+
|
|
51
|
+
- Add pyproject.toml file for packaging and publishing Toolium
|
|
52
|
+
- Configure ruff for linting and formatting files, replacing flake8 and black
|
|
53
|
+
- Add text analysis tool to get an overall match of a text against a list of expected characteristics
|
|
54
|
+
using AI libraries that come with the `ai` extra dependency
|
|
55
|
+
- Add langgraph methods to create a ReAct AI agent to test the behavior of other AI agents or LLMs
|
|
56
|
+
- Add llm-as-a-judge methods to use an LLM to evaluate the answer of another LLM and give a similarity score based
|
|
57
|
+
on the user's question and a reference answer
|
|
58
|
+
|
|
59
|
+
v3.7.0
|
|
60
|
+
------
|
|
61
|
+
|
|
62
|
+
*Release date: 2025-12-02*
|
|
63
|
+
|
|
64
|
+
- Fix accuracy tag to exclude skipped executions from total executions count
|
|
65
|
+
- Add `after_accuracy_scenario` hook to allow custom behavior after accuracy scenario execution
|
|
66
|
+
- Add csv report for accuracy scenario results
|
|
67
|
+
- Add text readability assessment function based on the AI libraries that come with the `ai` extra dependency
|
|
68
|
+
|
|
69
|
+
v3.6.0
|
|
70
|
+
------
|
|
71
|
+
|
|
72
|
+
*Release date: 2025-11-20*
|
|
73
|
+
|
|
74
|
+
- Remove Python 3.9 support (Python 3.9 reached the end of its life on October 31st, 2025)
|
|
75
|
+
- Remove xcuitest deprecated `get_window_size` method and replaced it with `get_window_rect` in all mobile actions
|
|
76
|
+
- Add `SHARP` replacement, to convert [SHARP] to # character in behave steps parameters
|
|
77
|
+
- Add text comparison methods based on AI libraries. To use them, install the `ai` extra dependency:
|
|
78
|
+
|
|
79
|
+
.. code:: console
|
|
80
|
+
|
|
81
|
+
$ pip install toolium[ai]
|
|
82
|
+
|
|
83
|
+
- Add accuracy tags to behave scenarios using `@accuracy_<percent>_<executions>`, e.g. with `@accuracy_80_10` tag, the
|
|
84
|
+
scenario is executed 10 times expecting 80% accuracy
|
|
85
|
+
- Add accuracy data tags to behave scenarios using `@accuracy_data_<suffix>`, e.g. `@accuracy_data_greetings` for
|
|
86
|
+
accuracy data with greetings suffix, that allows to execute accuracy scenarios with different data sets
|
|
87
|
+
|
|
88
|
+
v3.5.0
|
|
89
|
+
------
|
|
90
|
+
|
|
91
|
+
*Release date: 2025-07-29*
|
|
92
|
+
|
|
93
|
+
- Add support for Python 3.13
|
|
94
|
+
- Remove Python 3.8 support (Python 3.8 reached the end of its life on October 14th, 2024)
|
|
95
|
+
- Add `LANG` replacement, to use different language translations. Example: [LANG:some_text::new_language]
|
|
96
|
+
- Playwright installation is now optional, it can be installed with the `playwright` extra dependency. To install
|
|
97
|
+
Toolium with Playwright support, use:
|
|
98
|
+
|
|
99
|
+
.. code:: console
|
|
100
|
+
|
|
101
|
+
$ pip install toolium[playwright]
|
|
102
|
+
|
|
103
|
+
v3.4.0
|
|
104
|
+
------
|
|
105
|
+
|
|
106
|
+
*Release date: 2025-03-06*
|
|
107
|
+
|
|
108
|
+
- Now Playwright is available to run web tests instead of Selenium by configuring `web_library: playwright` in [Driver]
|
|
109
|
+
section
|
|
110
|
+
- Allow setting the number of decimal places for seconds when using the `[NOW]` replacement with a specific format
|
|
111
|
+
|
|
112
|
+
v3.3.1
|
|
113
|
+
------
|
|
114
|
+
|
|
115
|
+
*Release date: 2025-02-05*
|
|
116
|
+
|
|
117
|
+
- Allow to save the diff image in jpg format for visual tests working with jpg
|
|
118
|
+
- Fix the use of the # character in the actions defined in the feature description (Actions Before/After...)
|
|
119
|
+
|
|
120
|
+
v3.3.0
|
|
121
|
+
------
|
|
122
|
+
|
|
123
|
+
*Release date: 2024-11-26*
|
|
124
|
+
|
|
125
|
+
- Allow negative indexes for list elements in context searches. Example: [CONTEXT:element.-1]
|
|
126
|
+
- Add support for JSON strings to the `DICT` and `LIST`` replacement. Example: [DICT:{"key": true}], [LIST:[null]]
|
|
127
|
+
- Add `REPLACE` replacement, to replace a substring with another. Example: [REPLACE:[CONTEXT:some_url]::https::http]
|
|
128
|
+
- Add `TITLE` replacement, to apply Python's title() function. Example: [TITLE:the title]
|
|
129
|
+
- Add `ROUND` replacement, float number to a string with the indicated number of decimals. Example: [ROUND:3.3333::2]
|
|
130
|
+
- Remove accents from generated file names to avoid errors in some filesystems
|
|
131
|
+
- Update Appium-Python-Client requirement to enable 3 and 4 versions
|
|
132
|
+
- Deprecate set_text method in InputText class to make it compatible with Appium-Python-Client 3 and 4
|
|
133
|
+
|
|
134
|
+
v3.2.0
|
|
135
|
+
------
|
|
136
|
+
|
|
137
|
+
*Release date: 2024-09-13*
|
|
138
|
+
|
|
139
|
+
- Add `run_storage` dictionary to context to store information during the whole test execution
|
|
140
|
+
- Update current ChainMap context storages (context.storage, context.feature_storage and context.run_storage)
|
|
141
|
+
- Allow to store values from steps into desire storage by using [key], [FEATURE:key] and [RUN:key]
|
|
142
|
+
|
|
143
|
+
v3.1.5
|
|
144
|
+
------
|
|
145
|
+
|
|
146
|
+
*Release date: 2024-07-15*
|
|
147
|
+
|
|
148
|
+
- Fix `export_poeditor_project` method allowing empty export response
|
|
149
|
+
- Add `key=value` expressions for selecting elements in the context storage
|
|
150
|
+
- Upgrade Faker version to 25.9.*
|
|
151
|
+
- Fix result for action before the feature with error and background to fail scenarios
|
|
152
|
+
|
|
153
|
+
v3.1.4
|
|
154
|
+
------
|
|
155
|
+
|
|
156
|
+
*Release date: 2024-03-25*
|
|
157
|
+
|
|
158
|
+
- Add `ignore_empty` optional parameter to POEditor configuration to ignore empty translations
|
|
159
|
+
- Ignore not found excluded elements in visual tests
|
|
160
|
+
- Fix duration calling to Appium `swipe` method
|
|
161
|
+
- Fix `[STRING_WITH_LENGTH_NN]` replacement for string with length inside a longer string
|
|
162
|
+
|
|
163
|
+
v3.1.3
|
|
164
|
+
------
|
|
165
|
+
|
|
166
|
+
*Release date: 2024-02-06*
|
|
167
|
+
|
|
168
|
+
- Fix `PageElements` class initialization when custom page element classes don't have all optional attributes
|
|
169
|
+
|
|
170
|
+
v3.1.2
|
|
171
|
+
------
|
|
172
|
+
|
|
173
|
+
*Release date: 2024-02-05*
|
|
174
|
+
|
|
175
|
+
- Upgrade Pillow version to 10.1.* to fix compatibility with Python 3.12
|
|
176
|
+
|
|
177
|
+
v3.1.1
|
|
178
|
+
------
|
|
179
|
+
|
|
180
|
+
*Release date: 2024-02-02*
|
|
181
|
+
|
|
182
|
+
- Add support for Python 3.12
|
|
183
|
+
- Upgrade Sphinx version from 4.* to 7.* to fix readthedocs theme format
|
|
184
|
+
- Upgrade readthedocs-sphinx-search to 0.3.2 to fix security vulnerability
|
|
185
|
+
- Do not log warning messages when toolium system properties are used
|
|
186
|
+
- Allow to initialize a `PageElements` class with webview attributes
|
|
187
|
+
|
|
188
|
+
v3.1.0
|
|
189
|
+
------
|
|
190
|
+
|
|
191
|
+
*Release date: 2023-09-19*
|
|
192
|
+
|
|
193
|
+
- Update `[CONTEXT:a.b.c]` replacement to allow lists access, e.g. [CONTEXT:list.1] to access the second element of list
|
|
194
|
+
- Add capabilities configured in `[Capabilities]` section also to Appium tests to use `platformName` and `browserName`
|
|
195
|
+
w3c capabilities instead of Appium ones
|
|
196
|
+
- `platformVersion` Appium capability must be a string
|
|
197
|
+
- Add optional parameter to `compare_downloaded_files` method to allow to compare files with different names
|
|
198
|
+
- Remove Python 3.7 support (Python 3.7 reached the end of its life on June 27th, 2023)
|
|
199
|
+
- Update _android_automatic_context_selection method to be compatible with latest chromedriver versions
|
|
200
|
+
|
|
201
|
+
v3.0.2
|
|
202
|
+
------
|
|
203
|
+
|
|
204
|
+
*Release date: 2023-06-08*
|
|
205
|
+
|
|
206
|
+
- `context.storage` must be initialized before dynamic environment steps in `before_feature` method
|
|
207
|
+
- Mark scenario as failed when a dynamic environment step fails in `before_scenario`
|
|
208
|
+
- Mark all feature scenarios as failed when a dynamic environment step fails in `before_feature` and `after_feature`
|
|
209
|
+
- Configure minimal Appium-Python-Client version to 2.3.0 to avoid import errors
|
|
210
|
+
|
|
211
|
+
v3.0.1
|
|
212
|
+
------
|
|
213
|
+
|
|
214
|
+
*Release date: 2023-05-09*
|
|
215
|
+
|
|
216
|
+
- Allow to search in `context.storage` using `[CONTEXT:a.b.c]` replacement when `before_feature` method is not used
|
|
217
|
+
- Execute after scenario methods also when a scenario is skipped to assure that scenario preconditions are cleaned
|
|
218
|
+
- Fix `[LANG:key]` replacement bug when it contains carriage returns
|
|
219
|
+
- `context.storage` must be initialized before dynamic environment steps in `before_scenario` method
|
|
220
|
+
- Fix error in Python 3.11 executing nose2 tests
|
|
221
|
+
|
|
222
|
+
v3.0.0
|
|
223
|
+
------
|
|
224
|
+
|
|
225
|
+
*Release date: 2023-05-03*
|
|
226
|
+
|
|
227
|
+
- Add support for Python 3.11
|
|
228
|
+
- Add support for Selenium 4
|
|
229
|
+
- Add support for Appium-Python-Client 2
|
|
230
|
+
- Visual testing comparison has changed
|
|
231
|
+
|
|
232
|
+
| It only needs PIL library to compare images and generate the differences images
|
|
233
|
+
| Old PerceptualDiff and Magick engines have been removed
|
|
234
|
+
| Config property `engine` in [VisualTests] section has been removed
|
|
235
|
+
| Images distance calculation method has changed, it is recommended to review thresholds in tests
|
|
236
|
+
|
|
237
|
+
- Now `gecko_driver_path`, `chrome_driver_path`, `explorer_driver_path` and `edge_driver_path` config properties
|
|
238
|
+
in [Driver] section are optional, due to new SeleniumManager feature, that downloads drivers automatically
|
|
239
|
+
- New optional config property `safari_driver_path` in [Driver] section to configure Safari driver
|
|
240
|
+
- New optional config property `options` in [Chrome] section to configure Chrome options instead of using old
|
|
241
|
+
property `goog:chromeOptions` in [Capabilities] section.
|
|
242
|
+
- New optional config property `base_path` in [Server] section to allow using old Selenium 3 or Appium 1 remote servers
|
|
243
|
+
- Remove support for lettuce tests
|
|
244
|
+
- Remove deprecated parameter `context` from `map_param` and POEditor methods
|
|
245
|
+
- Remove deprecated config property `restart_driver_fail` in [Driver] section
|
|
246
|
+
- Remove deprecated environment variables `Section_option`, `Config_environment` and `env`
|
|
247
|
+
- Update `[RANDOM_PHONE_NUMBER]` replacement using new `DataGenerator` class
|
|
248
|
+
- Update `[CONTEXT:a.b.c]` replacement to search data in context, context.storage and context.feature_storage
|
|
249
|
+
- Update `[CONTEXT:a.b.c]` replacement to allow dictionaries or classes in context fields
|
|
250
|
+
|
|
251
|
+
v2.7.0
|
|
252
|
+
------
|
|
253
|
+
|
|
254
|
+
*Release date: 2023-02-24*
|
|
255
|
+
|
|
256
|
+
- Fix drivers not being closed in `after_feature` when errors occur during `before_feature` steps execution
|
|
257
|
+
- Allow to add extensions to chrome options from properties file
|
|
258
|
+
|
|
259
|
+
New config section [ChromeExtensions] with extensions file paths, e.g. 'firebug: resources/firebug-lite.crx'
|
|
260
|
+
|
|
261
|
+
v2.6.3
|
|
262
|
+
------
|
|
263
|
+
|
|
264
|
+
*Release date: 2022-12-09*
|
|
265
|
+
|
|
266
|
+
- Fix error in Android automatic context selection when context does not contain pages
|
|
267
|
+
- Remove Python 3.6 support (Python 3.6 reached the end of its life on December 23th, 2021)
|
|
268
|
+
|
|
269
|
+
v2.6.2
|
|
270
|
+
------
|
|
271
|
+
|
|
272
|
+
*Release date: 2022-10-18*
|
|
273
|
+
|
|
274
|
+
- New param [UUID] in *replace_param* method to generate a v4 UUID
|
|
275
|
+
- Improve POEditor error message when there are more than one project
|
|
276
|
+
|
|
277
|
+
v2.6.1
|
|
278
|
+
------
|
|
279
|
+
|
|
280
|
+
*Release date: 2022-06-28*
|
|
281
|
+
|
|
282
|
+
- Reference dotted keys when saving objects in context storage using [CONTEXT:a.b.c] formula
|
|
283
|
+
- Fix Visual testing image size for MacOS Retina and mobile layout
|
|
284
|
+
|
|
285
|
+
v2.6.0
|
|
286
|
+
------
|
|
287
|
+
|
|
288
|
+
*Release date: 2022-04-29*
|
|
289
|
+
|
|
290
|
+
- Update map_param method to allow recursive replacements
|
|
291
|
+
- Update replace_param function to allow multiple date expressions in the same param
|
|
292
|
+
- Fix error message to show parent locator instead of object reference when an element is not found
|
|
293
|
+
- Update replace_param function to allow NOW datetime expressions with arbitrary formats accepted by datetime.strftime
|
|
294
|
+
|
|
295
|
+
v2.5.0
|
|
296
|
+
------
|
|
297
|
+
|
|
298
|
+
*Release date: 2022-03-16*
|
|
299
|
+
|
|
300
|
+
- Update map_param method to use dataset global variables instead of context parameter
|
|
301
|
+
- Dataset variables needed for TOOLIUM, CONTEXT and POE replacements are set automatically
|
|
302
|
+
- Make POEditor methods independent of behave context
|
|
303
|
+
- Fix POEditor bug writing to file when terms contain slashes: from 'http:\/\/www.example.com' to 'http://www.example.com'
|
|
304
|
+
|
|
305
|
+
v2.4.0
|
|
306
|
+
------
|
|
307
|
+
|
|
308
|
+
*Release date: 2022-03-04*
|
|
309
|
+
|
|
310
|
+
- Add set_file_path and set_base64_path functions to dataset module, to set base paths for FILE and BASE64 mappings
|
|
311
|
+
- Visual testing baseline images are copied to output folder to facilitate report visualization in Jenkins
|
|
312
|
+
- Visual testing output folder is copied to *latest* folder to allow HTML Publisher Jenkins plugin to publish it
|
|
313
|
+
- Fix detection of POEditor configuration not available
|
|
314
|
+
- Fix indent error in Driver Configuration documentation
|
|
315
|
+
|
|
316
|
+
v2.3.0
|
|
317
|
+
------
|
|
318
|
+
|
|
319
|
+
*Release date: 2022-02-03*
|
|
320
|
+
|
|
321
|
+
- Add missing param in download_videos method to fix error downloading videos from a remote server
|
|
322
|
+
- Add map_param function to dataset module
|
|
323
|
+
- New param [RANDOM_PHONE_NUMBER] in *replace_param* method to generate random phone number
|
|
324
|
+
|
|
325
|
+
v2.2.1
|
|
326
|
+
------
|
|
327
|
+
|
|
328
|
+
*Release date: 2022-01-11*
|
|
329
|
+
|
|
330
|
+
- Add support for Python 3.10
|
|
331
|
+
- Add support for Appium-Python-Client 1.3.0
|
|
332
|
+
- Remove Python 3.5 support (Python 3.5 reached the end of its life on September 13th, 2020)
|
|
333
|
+
- Move code quality check from codacy to codeclimate
|
|
334
|
+
- Upgrade Sphinx version from 3.* to 4.* to fix doc compilation errors in readthedocs
|
|
335
|
+
|
|
336
|
+
v2.2.0
|
|
337
|
+
------
|
|
338
|
+
|
|
339
|
+
*Release date: 2021-11-03*
|
|
340
|
+
|
|
341
|
+
- Add JSON object/list conversion to Python dict/list in the type inference logic of the *replace_param* function
|
|
342
|
+
- Add *finalize_properties_configuration* method in *DriverWrapper* class to allow the modification of config properties
|
|
343
|
+
upon initialization programmatically before driver creation
|
|
344
|
+
- Properties values configured by properties files can be overridden with system properties named
|
|
345
|
+
*TOOLIUM_[SECTION]_[OPTION]*, moreover these system properties can be used to add new properties that do not exist in
|
|
346
|
+
properties files
|
|
347
|
+
- Configuration system properties have been renamed. The old property names are deprecated but they can still be used.
|
|
348
|
+
|
|
349
|
+
| Deprecated property name -> New property name
|
|
350
|
+
| Config_environment -> TOOLIUM_CONFIG_ENVIRONMENT
|
|
351
|
+
| Output_directory -> TOOLIUM_OUTPUT_DIRECTORY
|
|
352
|
+
| Output_log_filename -> TOOLIUM_OUTPUT_LOG_FILENAME
|
|
353
|
+
| Config_directory -> TOOLIUM_CONFIG_DIRECTORY
|
|
354
|
+
| Config_log_filename -> TOOLIUM_CONFIG_LOG_FILENAME
|
|
355
|
+
| Config_prop_filenames -> TOOLIUM_CONFIG_PROPERTIES_FILENAMES
|
|
356
|
+
| Visual_baseline_directory -> TOOLIUM_VISUAL_BASELINE_DIRECTORY
|
|
357
|
+
|
|
358
|
+
- Behave user property 'Config_environment' is deprecated, use 'TOOLIUM_CONFIG_ENVIRONMENT' instead:
|
|
359
|
+
|
|
360
|
+
.. code:: console
|
|
361
|
+
|
|
362
|
+
$ behave -D TOOLIUM_CONFIG_ENVIRONMENT=android
|
|
363
|
+
|
|
364
|
+
v2.1.1
|
|
365
|
+
------
|
|
366
|
+
|
|
367
|
+
*Release date: 2021-09-22*
|
|
368
|
+
|
|
369
|
+
- Avoid to overwrite parent in group elements when a custom parent is defined
|
|
370
|
+
- Fix Chrome options to allow to configure them at the same time in *Chrome* sections and in *goog:chromeOptions*
|
|
371
|
+
capability
|
|
372
|
+
|
|
373
|
+
v2.1.0
|
|
374
|
+
------
|
|
375
|
+
|
|
376
|
+
*Release date: 2021-07-05*
|
|
377
|
+
|
|
378
|
+
- Add type inference and improve replacement logic in *replace_param* function
|
|
379
|
+
- Remove *generate_fixed_length_param* function, as all possible transformations are available in *replace_param*
|
|
380
|
+
- Fix docutils development dependency to version 0.16
|
|
381
|
+
- Fix InputText element class getting the text value for mobile apps in webview mode
|
|
382
|
+
|
|
383
|
+
v2.0.0
|
|
384
|
+
------
|
|
385
|
+
|
|
386
|
+
*Release date: 2021-06-15*
|
|
387
|
+
|
|
388
|
+
- Remove Python 2.7, 3.3 and 3.4 support
|
|
389
|
+
- Update deprecated methods to fix warnings in python3 execution
|
|
390
|
+
- Move *get_valid_filename* and *makedirs_safe* methods from *toolium.path_utils* to *toolium.utils.path_utils*
|
|
391
|
+
- Move *Utils* class from *toolium.utils* to *toolium.utils.driver_utils*
|
|
392
|
+
- Fix report when an error happens in the Dynamic Environment
|
|
393
|
+
- New param [TIMESTAMP] in *replace_param* method to generate timestamp value of the actual moment
|
|
394
|
+
|
|
395
|
+
v1.9.2
|
|
396
|
+
------
|
|
397
|
+
|
|
398
|
+
*Release date: 2021-04-09*
|
|
399
|
+
|
|
400
|
+
- Fix error in *deepcopy* method of *ExtendedConfigParser* class when two config properties have colon in name
|
|
401
|
+
|
|
402
|
+
v1.9.1
|
|
403
|
+
------
|
|
404
|
+
|
|
405
|
+
*Release date: 2021-03-11*
|
|
406
|
+
|
|
407
|
+
- Added new method wait_until_ajax_request_completed to driver utils class
|
|
408
|
+
- Move CI from Travis to Github Actions
|
|
409
|
+
- Fix string conversion in dataset utilities
|
|
410
|
+
- Add upper/lower conversion to replace param method
|
|
411
|
+
|
|
412
|
+
v1.9.0
|
|
413
|
+
------
|
|
414
|
+
|
|
415
|
+
*Release date: 2021-03-02*
|
|
416
|
+
|
|
417
|
+
- Added utilities to download files
|
|
418
|
+
- Get text for InputText element in mobile tests
|
|
419
|
+
- Add *translate_config_variables* method to *ExtendedConfigParser* class to translate config variables in a string
|
|
420
|
+
- Add dataset utilities
|
|
421
|
+
- Manage multiples webviews for mobile tests
|
|
422
|
+
|
|
423
|
+
v1.8.2
|
|
424
|
+
------
|
|
425
|
+
|
|
426
|
+
*Release date: 2020-12-17*
|
|
427
|
+
|
|
428
|
+
- Add support for python 3.9
|
|
429
|
+
- Add *get_driver_name* method to driver utils class
|
|
430
|
+
- Add doc about how to configure Firefox device mode
|
|
431
|
+
- Fix driver log types documentation
|
|
432
|
+
|
|
433
|
+
v1.8.1
|
|
434
|
+
------
|
|
435
|
+
|
|
436
|
+
*Release date: 2020-11-02*
|
|
437
|
+
|
|
438
|
+
- Create logs folder before downloading driver logs
|
|
439
|
+
- Add *set_focus* method to common elements and input text elements
|
|
440
|
+
- Fix driver log types list in local executions
|
|
441
|
+
- Fix automatic_context_selection for group element
|
|
442
|
+
|
|
443
|
+
v1.8.0
|
|
444
|
+
------
|
|
445
|
+
|
|
446
|
+
*Release date: 2020-10-05*
|
|
447
|
+
|
|
448
|
+
- Allow lists in config properties instead of converting them to strings
|
|
449
|
+
- Fix typo in documentation for configuration Server log types
|
|
450
|
+
- Include click action in InputText element
|
|
451
|
+
- New config property 'automatic_context_selection' in [Driver] section for mobile tests with webview
|
|
452
|
+
|
|
453
|
+
| If it's false, the WebElement is searched using always NATIVE context
|
|
454
|
+
| If it's true, the WebElement is searched using context NATIVE or WEBVIEW depeding of the webview attribute value
|
|
455
|
+
|
|
456
|
+
v1.7.2
|
|
457
|
+
------
|
|
458
|
+
|
|
459
|
+
*Release date: 2020-09-01*
|
|
460
|
+
|
|
461
|
+
- Move utils.py and path_utils.py files to utils folder maintaining backwards compatibility
|
|
462
|
+
- Fix input text when element has a shadowroot and text contains quotation marks
|
|
463
|
+
- New config property 'log_types' in [Server] section to configure webdriver log types that should be downloaded
|
|
464
|
+
|
|
465
|
+
v1.7.1
|
|
466
|
+
------
|
|
467
|
+
|
|
468
|
+
*Release date: 2020-05-18*
|
|
469
|
+
|
|
470
|
+
- Fix Appium dependency conflict, current allowed versions: from 0.24 to 0.52
|
|
471
|
+
|
|
472
|
+
v1.7.0
|
|
473
|
+
------
|
|
474
|
+
|
|
475
|
+
*Release date: 2020-05-11*
|
|
476
|
+
|
|
477
|
+
- Fix to allow step's text (context.text) declaration into dynamic environment sections
|
|
478
|
+
- Add `ssl` config property in [Server] section to allow using https in Selenium Grid url
|
|
479
|
+
- Visual testing comparison must fail when baseline does not exist and save mode is disabled
|
|
480
|
+
- Update dynamic environment behaviour to work as the behave's one, i.e. after scenario/feature actions are executed
|
|
481
|
+
even when before scenario/feature actions fail
|
|
482
|
+
- Fix unit tests to work without any additional dependencies
|
|
483
|
+
|
|
484
|
+
v1.6.1
|
|
485
|
+
------
|
|
486
|
+
|
|
487
|
+
*Release date: 2020-01-21*
|
|
488
|
+
|
|
489
|
+
- Fix concurrent folder creation. Add *makedirs_safe* method to create a new folder.
|
|
490
|
+
|
|
491
|
+
v1.6.0
|
|
492
|
+
------
|
|
493
|
+
|
|
494
|
+
*Release date: 2020-01-15*
|
|
495
|
+
|
|
496
|
+
- New config property 'binary' in [Chrome] section to configure the chrome binary path
|
|
497
|
+
- Allow configuration properties with colon in name
|
|
498
|
+
|
|
499
|
+
For instance, to set a capability with : in name, like:
|
|
500
|
+
|
|
501
|
+
.. code:: console
|
|
502
|
+
|
|
503
|
+
goog:loggingPrefs = "{'performance': 'ALL', 'browser': 'ALL', 'driver': 'ALL'}"
|
|
504
|
+
|
|
505
|
+
Following property should be added in properties.cfg:
|
|
506
|
+
|
|
507
|
+
.. code:: console
|
|
508
|
+
|
|
509
|
+
[Capabilities]
|
|
510
|
+
goog___loggingPrefs: {'performance': 'ALL', 'browser': 'ALL', 'driver': 'ALL'}
|
|
511
|
+
|
|
512
|
+
- Add support for python 3.8
|
|
513
|
+
|
|
514
|
+
v1.5.6
|
|
515
|
+
------
|
|
516
|
+
|
|
517
|
+
*Release date: 2019-10-04*
|
|
518
|
+
|
|
519
|
+
- Fix dynamic environment exit code when there are hook errors
|
|
520
|
+
|
|
521
|
+
v1.5.5
|
|
522
|
+
------
|
|
523
|
+
|
|
524
|
+
*Release date: 2019-07-29*
|
|
525
|
+
|
|
526
|
+
- Fix screeninfo dependency to 0.3.1 version
|
|
527
|
+
|
|
528
|
+
v1.5.4
|
|
529
|
+
------
|
|
530
|
+
|
|
531
|
+
*Release date: 2019-07-22*
|
|
532
|
+
|
|
533
|
+
- Add support to encapsulated elements (Shadowroot)
|
|
534
|
+
|
|
535
|
+
| Only support CSS_SELECTOR locator
|
|
536
|
+
| Input text page element fixed
|
|
537
|
+
| It is not supported for list of elements yet
|
|
538
|
+
| It is not supported for element find by parent yet
|
|
539
|
+
| It is not supported nested encapsulation yet
|
|
540
|
+
|
|
541
|
+
- Fix Selenium dependency conflict
|
|
542
|
+
|
|
543
|
+
v1.5.3
|
|
544
|
+
------
|
|
545
|
+
|
|
546
|
+
*Release date: 2019-04-05*
|
|
547
|
+
|
|
548
|
+
- Fix error executing Appium locally
|
|
549
|
+
|
|
550
|
+
v1.5.2
|
|
551
|
+
------
|
|
552
|
+
|
|
553
|
+
*Release date: 2019-04-01*
|
|
554
|
+
|
|
555
|
+
- Check if a GGR session (current) is still active
|
|
556
|
+
- Download Selenoid logs files also when test fails
|
|
557
|
+
- Fix utils.py wait functions' descriptions
|
|
558
|
+
- Add new wait to utils.py in order to wait for an element not containing some text
|
|
559
|
+
|
|
560
|
+
v1.5.1
|
|
561
|
+
------
|
|
562
|
+
|
|
563
|
+
*Release date: 2019-03-18*
|
|
564
|
+
|
|
565
|
+
- Download Selenoid video and logs files only in linux nodes if video or logs are enabled
|
|
566
|
+
- Add a sleep between Selenoid retries when downloading files
|
|
567
|
+
- Manage exceptions in dynamic environment to mark affected scenarios as failed
|
|
568
|
+
|
|
569
|
+
v1.5.0
|
|
570
|
+
------
|
|
571
|
+
|
|
572
|
+
*Release date: 2019-02-26*
|
|
573
|
+
|
|
574
|
+
- Latest version of Appium can be used
|
|
575
|
+
- Make Toolium compatible with GGR and Selenoid
|
|
576
|
+
- Download execution video and session logs if the test fails using GGR and Selenoid
|
|
577
|
+
- Add logs path in the `_output` folder to download GGR logs
|
|
578
|
+
- Add `username` and `password` config properties in [Server] section to enable basic authentication in Selenium Grid (required by GGR)
|
|
579
|
+
|
|
580
|
+
v1.4.3
|
|
581
|
+
------
|
|
582
|
+
|
|
583
|
+
*Release date: 2018-12-18*
|
|
584
|
+
|
|
585
|
+
- Fix Appium version to 0.31 or minor
|
|
586
|
+
|
|
587
|
+
v1.4.2
|
|
588
|
+
------
|
|
589
|
+
|
|
590
|
+
*Release date: 2018-10-26*
|
|
591
|
+
|
|
592
|
+
- Add movement in X axis in *scroll_element_into_view* method
|
|
593
|
+
- Fix bugs and new features in the Dynamic Environment library:
|
|
594
|
+
|
|
595
|
+
| chars no utf-8 are accepted
|
|
596
|
+
| no replace behave prefixes into a step
|
|
597
|
+
| pretty print by console, in Steps multi lines
|
|
598
|
+
| raise an exception in error case
|
|
599
|
+
| allow comments in the steps
|
|
600
|
+
|
|
601
|
+
- Add support for python 3.7
|
|
602
|
+
|
|
603
|
+
v1.4.1
|
|
604
|
+
------
|
|
605
|
+
|
|
606
|
+
*Release date: 2018-02-26*
|
|
607
|
+
|
|
608
|
+
- Fix README.rst format to be compatible with pypi
|
|
609
|
+
- Fix `after_scenario` error when toolium `before_feature` is not used
|
|
610
|
+
- Read `Config_environment` before properties initialization to read right properties file
|
|
611
|
+
- New config section [FirefoxArguments] to set firefox arguments from properties file, e.g. '-private'
|
|
612
|
+
- Add a config property `headless` in [Driver] section to enable headless mode in firefox and chrome
|
|
613
|
+
- New config properties 'monitor', 'bounds_x' and 'bounds_y' in [Driver] section to configure browser bounds and monitor
|
|
614
|
+
- Normalize filenames to avoid errors with invalid characters
|
|
615
|
+
|
|
616
|
+
v1.4.0
|
|
617
|
+
------
|
|
618
|
+
|
|
619
|
+
*Release date: 2018-02-04*
|
|
620
|
+
|
|
621
|
+
- Add pytest fixtures to start and stop drivers
|
|
622
|
+
- New config property `reuse_driver_session` in [Driver] section to use the same driver in all tests
|
|
623
|
+
- Rename config property `restart_driver_fail` in [Driver] section to `restart_driver_after_failure`
|
|
624
|
+
- Add @no_driver feature or scenario tag to do not start the driver in these tests
|
|
625
|
+
- Fix output folder names when driver type is empty
|
|
626
|
+
- Fix output log name when `Config_environment` is used
|
|
627
|
+
- Fix Chrome options using remote drivers with Selenium >= 3.6.0
|
|
628
|
+
|
|
629
|
+
v1.3.0
|
|
630
|
+
------
|
|
631
|
+
|
|
632
|
+
*Release date: 2017-09-12*
|
|
633
|
+
|
|
634
|
+
- Add Behave dynamic environment (more info in `Docs <http://toolium.readthedocs.io/en/latest/tests_runners_integration.html#behave-dynamic-environment>`_)
|
|
635
|
+
- Fix visual screenshot filename error when behave feature name contains :
|
|
636
|
+
- Add a config property 'explicitly_wait' in [Driver] section to set the default timeout used in *wait_until* methods
|
|
637
|
+
- When reuse_driver is true using behave, driver is initialized in *before_feature* method and closed in *after_feature*
|
|
638
|
+
method
|
|
639
|
+
- Add @reuse_driver feature tag to reuse driver in a behave feature, even if reuse_driver is false
|
|
640
|
+
- Add @reset_driver scenario tag to restart driver before a behave scenario, even if reuse_driver is true
|
|
641
|
+
- Add *is_present* and *is_visible* methods to PageElement classes to know if an element is present or visible
|
|
642
|
+
|
|
643
|
+
v1.2.5
|
|
644
|
+
------
|
|
645
|
+
|
|
646
|
+
*Release date: 2017-03-24*
|
|
647
|
+
|
|
648
|
+
- Fix firefox initialization error using Selenium 2.X
|
|
649
|
+
- Add *wait_until_loaded* method to PageObject class to wait until all page elements with wait=True are visible
|
|
650
|
+
|
|
651
|
+
v1.2.4
|
|
652
|
+
------
|
|
653
|
+
|
|
654
|
+
*Release date: 2017-03-17*
|
|
655
|
+
|
|
656
|
+
- Fix NoSuchElementException error finding elements in nested groups
|
|
657
|
+
|
|
658
|
+
v1.2.3
|
|
659
|
+
------
|
|
660
|
+
|
|
661
|
+
*Release date: 2017-03-10*
|
|
662
|
+
|
|
663
|
+
- Save *geckodriver.log* file in output folder
|
|
664
|
+
- Fix MagickEngine name error when using an old version of needle
|
|
665
|
+
- Add *wait_until_clickable* method to Utils and PageElement classes to search for an element and wait until it is
|
|
666
|
+
clickable
|
|
667
|
+
|
|
668
|
+
v1.2.2
|
|
669
|
+
------
|
|
670
|
+
|
|
671
|
+
*Release date: 2017-02-01*
|
|
672
|
+
|
|
673
|
+
- Fix error comparing screenshots in mobile tests
|
|
674
|
+
- Fix image size when enlarging a vertical image in visual testing reports
|
|
675
|
+
- Move js and css out of visual html report to avoid CSP errors
|
|
676
|
+
|
|
677
|
+
v1.2.1
|
|
678
|
+
------
|
|
679
|
+
|
|
680
|
+
*Release date: 2017-01-18*
|
|
681
|
+
|
|
682
|
+
- Fix error installing Toolium when setuptools version is too old
|
|
683
|
+
|
|
684
|
+
v1.2.0
|
|
685
|
+
------
|
|
686
|
+
|
|
687
|
+
*Release date: 2017-01-17*
|
|
688
|
+
|
|
689
|
+
- Refactored reset_object method. Now it has an optional parameter with the driver_wrapper.
|
|
690
|
+
- Fix error reading geckodriver logs after test failure
|
|
691
|
+
- Fix error downloading videos after failed tests
|
|
692
|
+
- Fix error in visual tests when excluding elements in a scrolled page
|
|
693
|
+
- New config property 'logs_enabled' in [Server] section to download webdriver logs even if the test passes
|
|
694
|
+
- New config property 'save_web_element' in [Driver] section
|
|
695
|
+
|
|
696
|
+
| If it's false, the WebElement is searched whenever is needed (default value)
|
|
697
|
+
| If it's true, the WebElement is saved in PageElement to avoid searching for the same element multiple times. Useful
|
|
698
|
+
in mobile testing when searching for an element can take a long time.
|
|
699
|
+
|
|
700
|
+
- New config property 'restart_driver_fail' in [Driver] section to restart the driver when the test fails even though
|
|
701
|
+
the value of *reuse_driver* property is *true*
|
|
702
|
+
- System property 'Config_environment' is used to select config files, e.g., to read android-properties.cfg file:
|
|
703
|
+
|
|
704
|
+
.. code:: console
|
|
705
|
+
|
|
706
|
+
$ Config_environment=android nose2 web/tests/test_web.py
|
|
707
|
+
|
|
708
|
+
- Behave user property 'env' is deprecated, use 'Config_environment' instead:
|
|
709
|
+
|
|
710
|
+
.. code:: console
|
|
711
|
+
|
|
712
|
+
$ behave -D Config_environment=android
|
|
713
|
+
|
|
714
|
+
v1.1.3
|
|
715
|
+
------
|
|
716
|
+
|
|
717
|
+
*Release date: 2016-11-18*
|
|
718
|
+
|
|
719
|
+
- Video download works in Selenium Grid 3
|
|
720
|
+
- New config property 'binary' in [Firefox] section to configure the firefox binary path
|
|
721
|
+
- Allow to configure visual baseline directory in ConfigFiles class (default: output/visualtests/baseline)
|
|
722
|
+
- Delete IE and Edge cookies after tests
|
|
723
|
+
- Fix wait_until_element_visible and wait_until_element_not_visible methods when the page element has a parent element
|
|
724
|
+
- Add *imagemagick* as visual engine to have better diff images
|
|
725
|
+
|
|
726
|
+
v1.1.2
|
|
727
|
+
------
|
|
728
|
+
|
|
729
|
+
*Release date: 2016-07-19*
|
|
730
|
+
|
|
731
|
+
- Baseline name property can contain *{Version}* to add actual version capability value to the baseline name
|
|
732
|
+
- New config property 'gecko_driver_path' in [Browser] section to configure the Gecko/Marionette driver location
|
|
733
|
+
|
|
734
|
+
v1.1.1
|
|
735
|
+
------
|
|
736
|
+
|
|
737
|
+
*Release date: 2016-06-30*
|
|
738
|
+
|
|
739
|
+
- Save webdriver logs of each driver, not just the first one, and only if test fails
|
|
740
|
+
|
|
741
|
+
v1.1.0
|
|
742
|
+
------
|
|
743
|
+
|
|
744
|
+
*Release date: 2016-06-03*
|
|
745
|
+
|
|
746
|
+
- New MobilePageObject class to test Android and iOS apps with the same base page objects
|
|
747
|
+
- Fix visual report links in Windows
|
|
748
|
+
- Add @no_reset_app, @reset_app and @full_reset_app behave tags to configure Appium reset capabilities for one scenario
|
|
749
|
+
- Add @android_only and @ios_only behave tags to exclude one scenario from iOS or Android executions
|
|
750
|
+
- Add a behave user property named *env* to select config files, e.g., to use android-properties.cfg file:
|
|
751
|
+
|
|
752
|
+
.. code:: console
|
|
753
|
+
|
|
754
|
+
$ behave -D env=android
|
|
755
|
+
|
|
756
|
+
v1.0.1
|
|
757
|
+
------
|
|
758
|
+
|
|
759
|
+
*Release date: 2016-05-09*
|
|
760
|
+
|
|
761
|
+
- Fix wait_until_first_element_is_found error when element is None
|
|
762
|
+
- Fix app_strings initialization in page objects
|
|
763
|
+
- Fix swipe method to work with Appium 1.5 swipe
|
|
764
|
+
|
|
765
|
+
v1.0.0
|
|
766
|
+
------
|
|
767
|
+
|
|
768
|
+
*Release date: 2016-04-12*
|
|
769
|
+
|
|
770
|
+
DRIVER
|
|
771
|
+
|
|
772
|
+
- Refactor to move config property 'browser' in [Browser] section to 'type' property in [Driver] section
|
|
773
|
+
- Allow to run API tests with behave: driver type property must be empty
|
|
774
|
+
- Refactor to rename 'driver_path' config properties to 'chrome_driver_path', 'explorer_driver_path',
|
|
775
|
+
'edge_driver_path', 'opera_driver_path' and 'phantomjs_driver_path'
|
|
776
|
+
- Refactor to move config properties 'reuse_driver' and 'implicitly_wait' from [Common] section to [Driver] section
|
|
777
|
+
- Add a new config property 'appium_app_strings' in [Driver] section to request app strings before each Appium test
|
|
778
|
+
- Add new config properties 'window_width' and 'window_height' in [Driver] section to configure browser window size
|
|
779
|
+
- Upload the error screenshot to Jira if the test fails
|
|
780
|
+
- Allow to add extensions to firefox profile from properties file
|
|
781
|
+
|
|
782
|
+
New config section [FirefoxExtensions] with extensions file paths, e.g. 'firebug = firebug-3.0.0-beta.3.xpi'
|
|
783
|
+
|
|
784
|
+
- Allow to use a predefined firefox profile
|
|
785
|
+
|
|
786
|
+
New config property 'profile' in [Firefox] section to configure the profile directory
|
|
787
|
+
|
|
788
|
+
- Allow to set chrome arguments from properties file
|
|
789
|
+
|
|
790
|
+
New config section [ChromeArguments] with chrome arguments, e.g. 'lang = es'
|
|
791
|
+
|
|
792
|
+
PAGE OBJECTS
|
|
793
|
+
|
|
794
|
+
- Save WebElement in PageElement to avoid searching for the same element multiple times
|
|
795
|
+
- Refactor to rename get_element to get_web_element in Utils class and element to web_element in PageElement class
|
|
796
|
+
- Add *wait_until_first_element_is_found* method to Utils class to search for a list of elements and wait until one of
|
|
797
|
+
them is found
|
|
798
|
+
- Add new page element types: Checkbox, InputRadio, Link, Group and PageElements
|
|
799
|
+
|
|
800
|
+
BEHAVE
|
|
801
|
+
|
|
802
|
+
- Allow to modify Toolium properties from behave userdata configuration, e.g.:
|
|
803
|
+
|
|
804
|
+
.. code:: console
|
|
805
|
+
|
|
806
|
+
$ behave -D Driver_type=chrome
|
|
807
|
+
|
|
808
|
+
VISUAL TESTING
|
|
809
|
+
|
|
810
|
+
- Refactor to rename assertScreenshot to assert_screenshot and assertFullScreenshot to assert_full_screenshot
|
|
811
|
+
- Add force parameter to *assert_screenshot* methods to compare the screenshot even if visual testing is disabled by
|
|
812
|
+
configuration. If the assertion fails, the test fails.
|
|
813
|
+
- Baseline name property can contain *{PlatformVersion}* or *{RemoteNode}* to add actual platform version or remote
|
|
814
|
+
node name to the baseline name
|
|
815
|
+
|
|
816
|
+
|
|
817
|
+
v0.12.1
|
|
818
|
+
-------
|
|
819
|
+
|
|
820
|
+
*Release date: 2016-01-07*
|
|
821
|
+
|
|
822
|
+
- Fix app_strings initialization in Behave Appium tests
|
|
823
|
+
- In Behave tests, Toolium config is saved in context.toolium_config instead of using context.config to avoid
|
|
824
|
+
overriding Behave config
|
|
825
|
+
|
|
826
|
+
v0.12.0
|
|
827
|
+
-------
|
|
828
|
+
|
|
829
|
+
*Release date: 2015-12-23*
|
|
830
|
+
|
|
831
|
+
- Allow to create a second driver using DriverWrapper constructor:
|
|
832
|
+
|
|
833
|
+
.. code-block:: python
|
|
834
|
+
|
|
835
|
+
second_wrapper = DriverWrapper()
|
|
836
|
+
second_wrapper.connect()
|
|
837
|
+
|
|
838
|
+
- Fix page object issue with non-default driver. Now page object and utils init methods have both a driver_wrapper
|
|
839
|
+
optional parameter instead of driver parameter.
|
|
840
|
+
- Fix swipe over an element in Android and iOS web tests
|
|
841
|
+
- Move set_config_* and set_output_* test case methods to ConfigFiles class
|
|
842
|
+
- Add behave environment file to initialize Toolium wrapper from behave tests
|
|
843
|
+
|
|
844
|
+
v0.11.3
|
|
845
|
+
-------
|
|
846
|
+
|
|
847
|
+
*Release date: 2015-11-24*
|
|
848
|
+
|
|
849
|
+
- Fix image size in visual testing for Android and iOS web tests
|
|
850
|
+
- Baseline name property allows any configuration property value to configure the visual testing baseline folder, e.g.:
|
|
851
|
+
|
|
852
|
+
| {AppiumCapabilities_deviceName}-{AppiumCapabilities_platformVersion}: this baseline_name could use baselines as iPhone_6-8.3, iPhone_6-9.1, iPhone_6s-9.1, ...
|
|
853
|
+
| {Browser_browser}: this baseline_name could use baselines as firefox, iexplore, ... (default value)
|
|
854
|
+
|
|
855
|
+
- Fix page elements initialization when they are defined outside of a page object
|
|
856
|
+
|
|
857
|
+
v0.11.2
|
|
858
|
+
-------
|
|
859
|
+
|
|
860
|
+
*Release date: 2015-11-11*
|
|
861
|
+
|
|
862
|
+
- Compatibility with Python 3
|
|
863
|
+
|
|
864
|
+
v0.11.1
|
|
865
|
+
-------
|
|
866
|
+
|
|
867
|
+
*Release date: 2015-11-02*
|
|
868
|
+
|
|
869
|
+
- New config property 'operadriver_path' in [Browser] section to configure the Opera Driver location
|
|
870
|
+
- Fix initialization error when a page object contains another page object
|
|
871
|
+
- Fix visual testing error if browser is phantomjs
|
|
872
|
+
- Fix firefox profile error in remote executions
|
|
873
|
+
- Configure setup.py to execute tests with 'python setup.py test'
|
|
874
|
+
- Convert markdown (.md) files to reStructuredText (.rst) and update long_description with README.rst content
|
|
875
|
+
|
|
876
|
+
v0.11.0
|
|
877
|
+
-------
|
|
878
|
+
|
|
879
|
+
*Release date: 2015-10-21*
|
|
880
|
+
|
|
881
|
+
- Rename library from seleniumtid to toolium
|
|
882
|
+
- Distributed under Apache Software License, Version 2
|
|
883
|
+
|
|
884
|
+
v0.10.0
|
|
885
|
+
-------
|
|
886
|
+
|
|
887
|
+
*Release date: 2015-09-23*
|
|
888
|
+
|
|
889
|
+
- Add support to Edge Windows browser
|
|
890
|
+
- New config property 'summary_prefix' in [Jira] section to modify default TCE summary
|
|
891
|
+
- Add scroll_element_into_view method to PageElement that scroll to element
|
|
892
|
+
- Add parent parameter to PageElement when element must be found from parent
|
|
893
|
+
- Page elements can be defined as class attributes, it is no longer necessary to define them as instance attributes in
|
|
894
|
+
init_page_elements()
|
|
895
|
+
- Add wait_until_visible, wait_until_not_visible and assertScreenshot methods to PageElement
|
|
896
|
+
- Allow to set Chrome mobile options from properties file
|
|
897
|
+
|
|
898
|
+
New config section [ChromeMobileEmulation] with mobile emulation options, e.g. 'deviceName = Google Nexus 5'
|
|
899
|
+
|
|
900
|
+
- Configuration system properties have been renamed
|
|
901
|
+
|
|
902
|
+
| Old properties: Files_output_path, Files_log_filename, Files_properties, Files_logging
|
|
903
|
+
| New properties: Output_directory, Output_log_filename, Config_directory, Config_prop_filenames, Config_log_filename
|
|
904
|
+
|
|
905
|
+
- Add set_config_* and set_output_* test case methods to configure output and config files instead of using
|
|
906
|
+
configuration system properties
|
|
907
|
+
|
|
908
|
+
v0.9.3
|
|
909
|
+
------
|
|
910
|
+
|
|
911
|
+
*Release date: 2015-07-24*
|
|
912
|
+
|
|
913
|
+
- Allow to set custom driver capabilities from properties file
|
|
914
|
+
|
|
915
|
+
New config section [Capabilities] with driver capabilities
|
|
916
|
+
|
|
917
|
+
- Fix set_value and app_strings errors in mobile web tests
|
|
918
|
+
- Fix set_value error in iOS tests when using needle
|
|
919
|
+
|
|
920
|
+
v0.9.2
|
|
921
|
+
------
|
|
922
|
+
|
|
923
|
+
*Release date: 2015-06-02*
|
|
924
|
+
|
|
925
|
+
- Allow to find elements by ios_uiautomation in visual assertions
|
|
926
|
+
- Fix app_strings error in mobile web tests
|
|
927
|
+
- Use set_value instead of send_keys to run tests faster
|
|
928
|
+
|
|
929
|
+
v0.9.1
|
|
930
|
+
------
|
|
931
|
+
|
|
932
|
+
*Release date: 2015-05-21*
|
|
933
|
+
|
|
934
|
+
- Add swipe method in Utils to allow swipe over an element
|
|
935
|
+
- Only one property file is mandatory if *Files_properties* has multiple values
|
|
936
|
+
- Allow to exclude elements from visual screenshots
|
|
937
|
+
|
|
938
|
+
v0.9.0
|
|
939
|
+
------
|
|
940
|
+
|
|
941
|
+
*Release date: 2015-05-12*
|
|
942
|
+
|
|
943
|
+
- Output path (screenshots, videos, visualtests) can be specified with a system property: *Files_output_path*
|
|
944
|
+
- Update app_strings in Appium tests only if the driver has changed
|
|
945
|
+
- Move visual properties from [Server] section to [VisualTests] section
|
|
946
|
+
- With a visual assertion error, the test can fail or give an error message and continue
|
|
947
|
+
|
|
948
|
+
New config property 'fail' in [VisualTests] section to fail the test when there is a visual error
|
|
949
|
+
|
|
950
|
+
- Create a html report with the visual tests results
|
|
951
|
+
|
|
952
|
+
New config property 'complete_report' in [VisualTests] section to include also correct visual assertions in report
|
|
953
|
+
|
|
954
|
+
- Configure multiple baseline name for different browsers, languages and versions
|
|
955
|
+
|
|
956
|
+
| New config property 'baseline_name' in [VisualTests] section to configure the name of the baseline folder
|
|
957
|
+
| Allow {browser}, {language} and {platformVersion} variables, e.g. baseline_name = {browser}-{language}
|
|
958
|
+
| The default baseline_name is {browser}.
|
|
959
|
+
|
|
960
|
+
- Add assertFullScreenshot method in SeleniumTestCase
|
|
961
|
+
|
|
962
|
+
v0.8.6
|
|
963
|
+
------
|
|
964
|
+
|
|
965
|
+
*Release date: 2015-04-17*
|
|
966
|
+
|
|
967
|
+
- Add wait_until_element_visible method in utils class
|
|
968
|
+
- Logger filename can be specified with a system property: *Files_log_filename*
|
|
969
|
+
|
|
970
|
+
v0.8.5
|
|
971
|
+
------
|
|
972
|
+
|
|
973
|
+
*Release date: 2015-03-23*
|
|
974
|
+
|
|
975
|
+
- Add Button page element
|
|
976
|
+
- AppiumTestCase has a new attribute app_strings, a dict with application strings in the active language
|
|
977
|
+
|
|
978
|
+
v0.8.4
|
|
979
|
+
------
|
|
980
|
+
|
|
981
|
+
*Release date: 2015-03-05*
|
|
982
|
+
|
|
983
|
+
- Allow to set firefox and chrome preferences from properties file
|
|
984
|
+
|
|
985
|
+
| New config section [FirefoxPreferences] with firefox preferences, e.g. 'browser.download.dir = /tmp'
|
|
986
|
+
| New config section [ChromePreferences] with chrome preferences, e.g. 'download.default_directory = /tmp'
|
|
987
|
+
|
|
988
|
+
v0.8.3
|
|
989
|
+
------
|
|
990
|
+
|
|
991
|
+
*Release date: 2015-02-11*
|
|
992
|
+
|
|
993
|
+
- Read properties file before each test to allow executing tests with different configurations (android, iphone, ...)
|
|
994
|
+
|
|
995
|
+
v0.8.2
|
|
996
|
+
------
|
|
997
|
+
|
|
998
|
+
*Release date: 2015-02-04*
|
|
999
|
+
|
|
1000
|
+
- Logging and properties config files can be specified with a system property: *Files_logging* and *Files_properties*
|
|
1001
|
+
|
|
1002
|
+
*Files_properties* allows multiple files separated by ;
|
|
1003
|
+
|
|
1004
|
+
v0.8.1
|
|
1005
|
+
------
|
|
1006
|
+
|
|
1007
|
+
*Release date: 2015-01-26*
|
|
1008
|
+
|
|
1009
|
+
- Fixed minor bugs
|
|
1010
|
+
- Add visual testing to lettuce tests
|
|
1011
|
+
|
|
1012
|
+
v0.8
|
|
1013
|
+
----
|
|
1014
|
+
|
|
1015
|
+
*Release date: 2015-01-20*
|
|
1016
|
+
|
|
1017
|
+
- Add visual testing to SeleniumTestCase and AppiumTestCase
|
|
1018
|
+
|
|
1019
|
+
| New config property 'visualtests_enabled' in [Server] section to enable visual testing
|
|
1020
|
+
| New config property 'visualtests_save' in [Server] section to overwrite baseline images with actual screenshots
|
|
1021
|
+
| New config property 'visualtests_engine' in [Server] section to select image engine (pil or perceptualdiff)
|
|
1022
|
+
|
|
1023
|
+
v0.7
|
|
1024
|
+
----
|
|
1025
|
+
|
|
1026
|
+
*Release date: 2014-12-23*
|
|
1027
|
+
|
|
1028
|
+
- Allow to autocomplete self.driver and self.utils in IDEs
|
|
1029
|
+
- Remove non-mandatory requirements
|
|
1030
|
+
|
|
1031
|
+
v0.6
|
|
1032
|
+
----
|
|
1033
|
+
|
|
1034
|
+
*Release date: 2014-12-05*
|
|
1035
|
+
|
|
1036
|
+
- Multiple tests of a class can be linked to the same Jira Test Case
|
|
1037
|
+
- If test fails, the error message will be added as a comment to the Jira Test Case Execution
|
|
1038
|
+
- Update Jira Test Cases also in lettuce tests
|
|
1039
|
+
|
|
1040
|
+
v0.5
|
|
1041
|
+
----
|
|
1042
|
+
|
|
1043
|
+
*Release date: 2014-12-01*
|
|
1044
|
+
|
|
1045
|
+
- Downloads the saved video if the test has been executed in a VideoGrid
|
|
1046
|
+
- Add BasicTestCase class to be used in Api tests or in other tests without selenium driver
|
|
1047
|
+
|
|
1048
|
+
v0.4
|
|
1049
|
+
----
|
|
1050
|
+
|
|
1051
|
+
*Release date: 2014-11-12*
|
|
1052
|
+
|
|
1053
|
+
- Add Lettuce terrain file to initialize Selenium driver
|
|
1054
|
+
- Add ConfigDriver.create_driver method to create a new driver with specific configuration
|
|
1055
|
+
- Add wait_until_element_not_visible method in utils class
|
|
1056
|
+
|
|
1057
|
+
v0.3
|
|
1058
|
+
----
|
|
1059
|
+
|
|
1060
|
+
*Release date: 2014-06-12*
|
|
1061
|
+
|
|
1062
|
+
- Add a config property 'implicitly_wait' in [Common] section to set an implicit timeout
|
|
1063
|
+
- Add a config property 'reuse_driver' in [Common] section to use the same driver in all tests of each class
|
|
1064
|
+
- The driver can be reused only in a test class setting a class variable 'reuse_driver = True'
|
|
1065
|
+
|
|
1066
|
+
v0.2
|
|
1067
|
+
----
|
|
1068
|
+
|
|
1069
|
+
*Release date: 2014-05-13*
|
|
1070
|
+
|
|
1071
|
+
- Now depends on Appium 1.0
|
|
1072
|
+
|
|
1073
|
+
v0.1
|
|
1074
|
+
----
|
|
1075
|
+
|
|
1076
|
+
*Release date: 2014-03-04*
|
|
1077
|
+
|
|
1078
|
+
- First version of the selenium library in python
|