artes 1.7.4 → 1.7.6

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.
Files changed (48) hide show
  1. package/README.md +781 -779
  2. package/assets/styles.css +4 -4
  3. package/cucumber.config.js +253 -253
  4. package/docs/ciExecutors.md +198 -198
  5. package/docs/emulationDevicesList.md +152 -152
  6. package/docs/functionDefinitions.md +2401 -2401
  7. package/docs/stepDefinitions.md +435 -433
  8. package/executer.js +266 -264
  9. package/index.js +50 -50
  10. package/package.json +56 -56
  11. package/src/helper/contextManager/browserManager.js +74 -74
  12. package/src/helper/contextManager/requestManager.js +23 -23
  13. package/src/helper/controller/elementController.js +210 -210
  14. package/src/helper/controller/findDuplicateTestNames.js +69 -69
  15. package/src/helper/controller/getEnvInfo.js +94 -94
  16. package/src/helper/controller/getExecutor.js +109 -109
  17. package/src/helper/controller/pomCollector.js +83 -83
  18. package/src/helper/controller/reportCustomizer.js +485 -485
  19. package/src/helper/controller/screenComparer.js +97 -108
  20. package/src/helper/controller/status-formatter.js +137 -137
  21. package/src/helper/controller/testCoverageCalculator.js +111 -111
  22. package/src/helper/executers/cleaner.js +23 -23
  23. package/src/helper/executers/exporter.js +19 -19
  24. package/src/helper/executers/helper.js +193 -191
  25. package/src/helper/executers/projectCreator.js +226 -222
  26. package/src/helper/executers/reportGenerator.js +91 -91
  27. package/src/helper/executers/testRunner.js +28 -28
  28. package/src/helper/executers/versionChecker.js +31 -31
  29. package/src/helper/imports/commons.js +65 -65
  30. package/src/helper/stepFunctions/APIActions.js +495 -495
  31. package/src/helper/stepFunctions/assertions.js +986 -986
  32. package/src/helper/stepFunctions/browserActions.js +87 -87
  33. package/src/helper/stepFunctions/elementInteractions.js +60 -60
  34. package/src/helper/stepFunctions/exporter.js +19 -19
  35. package/src/helper/stepFunctions/frameActions.js +72 -72
  36. package/src/helper/stepFunctions/keyboardActions.js +66 -66
  37. package/src/helper/stepFunctions/mouseActions.js +84 -84
  38. package/src/helper/stepFunctions/pageActions.js +43 -43
  39. package/src/hooks/context.js +15 -15
  40. package/src/hooks/hooks.js +287 -279
  41. package/src/stepDefinitions/API.steps.js +310 -310
  42. package/src/stepDefinitions/assertions.steps.js +1303 -1280
  43. package/src/stepDefinitions/browser.steps.js +74 -74
  44. package/src/stepDefinitions/frameActions.steps.js +76 -76
  45. package/src/stepDefinitions/keyboardActions.steps.js +264 -264
  46. package/src/stepDefinitions/mouseActions.steps.js +378 -378
  47. package/src/stepDefinitions/page.steps.js +71 -71
  48. package/src/stepDefinitions/random.steps.js +191 -191
@@ -1,433 +1,435 @@
1
- # Step Definitions
2
-
3
- ## Table of Contents
4
-
5
- - [Mouse Actions](#mouse-actions)
6
- - [Keyboard Actions](#keyboard-actions)
7
- - [Browser Actions](#browser-actions)
8
- - [Page Actions](#page-actions)
9
- - [Frame Actions](#frame-actions)
10
- - [API Actions](#api-actions)
11
- - [Variable Management](#variable-management)
12
- - [Debugging / Console Output](#debugging--console-output)
13
- - [Generic HTTP Request](#generic-http-request)
14
- - [Assertions](#assertions)
15
-
16
- ---
17
-
18
- # Mouse Actions
19
-
20
- ## Click Actions
21
-
22
- - User clicks `{string}`
23
- - User clicks `{string}` with force
24
- - User clicks `{string}` at `{int}, {int}` position
25
- - User clicks `{string}` at `{int}, {int}` position with force
26
- - User clicks at `{int}, {int}` coordinates
27
- - User clicks at `{int}, {int}` coordinates with click count `{int}` and delay `{int}`
28
- - User clicks at `{int}, {int}` coordinates with force
29
- - User clicks `{string}` with button `{string}`
30
- - User clicks `{string}` with button `{string}` and force
31
-
32
- ## Double Click Actions
33
-
34
- - User double clicks `{string}`
35
- - User double clicks `{string}` with force
36
- - User double clicks `{string}` at `{int}, {int}` position
37
- - User double clicks `{string}` at `{int}, {int}` position with force
38
- - User double clicks at `{int}, {int}` coordinates
39
- - User double clicks at `{int}, {int}` coordinates with click count `{int}` and delay `{int}`
40
- - User double clicks at `{int}, {int}` coordinates with force
41
-
42
- ## Mouse Movement Actions
43
-
44
- - User moves to `{int}, {int}` coordinates
45
- - User scrolls the mouse wheel at `{int}, {int}` coordinates
46
-
47
- ## Hover Actions
48
-
49
- - User hovers over `{string}`
50
- - User hovers over `{string}` with force
51
- - User hovers over `{string}` at `{int}, {int}` position
52
- - User hovers over `{string}` at `{int}, {int}` position with force
53
-
54
- ## Focus Actions
55
-
56
- - User focuses on `{string}`
57
- - User focuses on `{string}` with force
58
- - User focuses on `{string}` at `{int}, {int}` position
59
- - User focuses on `{string}` at `{int}, {int}` position with force
60
-
61
- ## Drag Actions
62
-
63
- - User drags `{string}` to `{string}`
64
- - User drags `{string}` to `{int}, {int}` position
65
-
66
- ## Selection Actions
67
-
68
- - User selects by value `{string}` from `{string}`
69
- - User selects by text `{string}` from `{string}`
70
-
71
- ## Checkbox Actions
72
-
73
- - User checks `{string}`
74
- - User unchecks `{string}`
75
-
76
- ## Scroll Actions
77
-
78
- - User scrolls into view for `{string}`
79
-
80
- ---
81
-
82
- # Keyboard Actions
83
-
84
- ## Press Actions
85
-
86
- - User presses `{string}` on `{string}`
87
- - User presses keys `{string}` sequentially on `{string}`
88
- - User presses keys `{string}` sequentially with delay `{int}` on `{string}`
89
-
90
- ## Input Actions
91
-
92
- - User types `{string}` in `{string}`
93
- - User types `{string}` with delay `{int}`
94
- - User inserts text `{string}`
95
- - User clears `{string}`
96
-
97
- ## Selection Actions
98
-
99
- - User selects text in `{string}`
100
-
101
- ## File Input Actions
102
-
103
- - User sets input files `{string}` for `{string}`
104
-
105
- ## Key State Actions
106
-
107
- - User holds down `{string}`
108
- - User releases `{string}`
109
- - User presses `{string}`
110
-
111
- # Browser Actions
112
-
113
- ## Cookie Actions
114
-
115
- - User sets `{string}` cookies
116
-
117
- ## Accessibility Actions
118
-
119
- ### Full Page Checks
120
- - User checks accessibility of current page
121
- - User checks accessibility of `{string}` page
122
-
123
- ### Element Checks
124
- - User checks accessibility of `{string}` element
125
- - User checks accessibility of `{string}` element on the `{string}` page
126
-
127
- ### WCAG-Specific Checks
128
- > For valid WCAG tags, refer to the [axe-core Tags Documentation](https://www.deque.com/axe/core-documentation/api-documentation/#axecore-tags)
129
-
130
- - User checks accessibility of current page due to `{string}` WCAG
131
- - User checks accessibility of `{string}` page due to `{string}` WCAG
132
- - User checks accessibility of `{string}` element due to `{string}` WCAG
133
- - User checks accessibility of `{string}` element on the `{string}` page due to `{string}` WCAG
134
-
135
- ---
136
-
137
- # Page Actions
138
-
139
- ## Navigation Actions
140
-
141
- - User navigates to `{string}` page
142
- - User navigates previous page
143
- - User navigates next page
144
-
145
- ## URL Actions
146
-
147
- - User gets URL of page
148
-
149
- ## Wait Actions
150
-
151
- - User waits `{int}` seconds
152
- - User waits `{int}` milliseconds
153
- - User waits `{int}` minutes
154
-
155
- ---
156
-
157
- # Frame Actions
158
-
159
- ## Screenshot Actions
160
-
161
- - User takes a screenshot of `{string}`
162
-
163
- ## Content and Locator Actions
164
-
165
- - User gets the content frame of `{string}`
166
- - User gets the frame locator of `{string}`
167
-
168
- ## Element Retrieval Actions
169
-
170
- - User gets the `{int} th` element of `{string}`
171
- - User gets the first element of `{string}`
172
- - User gets the last element of `{string}`
173
- - User filters elements of `{string}` with filter `{string}`
174
-
175
- ## Counting Actions
176
-
177
- - User counts the elements of `{string}`
178
-
179
- ## Accessibility-Based Retrieval Actions
180
-
181
- - User gets the element with alt text `{string}`
182
- - User gets the element with label `{string}`
183
- - User gets the element with placeholder `{string}`
184
- - User gets the element with role `{string}`
185
- - User gets the element with testId `{string}`
186
- - User gets the element with testId `{string}` (assuming you meant testId twice)
187
-
188
- ---
189
-
190
- # API Actions
191
-
192
- ## GET Requests
193
-
194
- - User sends GET request to `{string}`
195
- - User sends GET request to `{string}` with payload:
196
- - User sends GET request to `{string}` and saves `{string}` variables
197
- - User sends GET request to `{string}` with payload and saves `{string}` variables
198
-
199
- ## HEAD Requests
200
-
201
- - User sends HEAD request to `{string}`
202
-
203
- ## POST Requests
204
-
205
- - User sends POST request to `{string}` with payload:
206
- - User sends POST request to `{string}` with payload and saves `{string}` variables
207
- - User sends multipart POST request to `{string}` with payload:
208
- - User sends multipart POST request to `{string}` with payload and `{string}` variables
209
-
210
- ## PUT Requests
211
-
212
- - User sends PUT request to `{string}` with payload:
213
- - User sends PUT request to `{string}` with payload and saves `{string}` variables
214
- - User sends multipart PUT request to `{string}` with payload:
215
- - User sends multipart PUT request to `{string}` with payload and saves `{string}` variables
216
-
217
- ## PATCH Requests
218
-
219
- - User sends PATCH request to `{string}` with payload:
220
- - User sends PATCH request to `{string}` with payload and saves `{string}` variables
221
- - User sends multipart PATCH request to `{string}` with payload:
222
- - User sends multipart PATCH request to `{string}` with payload and saves `{string}` variables
223
-
224
- ## DELETE Requests
225
-
226
- - User sends DELETE request to `{string}`
227
- - User sends DELETE request to `{string}` and saves `{string}` variables
228
- - User sends DELETE request to `{string}` with payload:
229
- - User sends DELETE request to `{string}` with payload and saves `{string}` variables
230
-
231
- ---
232
-
233
- # Variable Management
234
-
235
- ## Manual Variable Assignment
236
-
237
- - User saves `{string}` variable from response as `{string}`
238
- - User saves `{string}` variable as `{string}`
239
-
240
- ## Random Variable Management
241
-
242
- ### Random Words
243
-
244
- - User sets random word as `{string}`
245
- - User sets random word that has `{int}` character as `{string}`
246
- - User sets random word that has character between `{int}` and `{int}` as `{string}`
247
- - User sets random words as `{string}`
248
- - User sets random `{int}` words as `{string}`
249
- - User sets random words that range between `{int}` and `{int}` as `{string}`
250
-
251
- ### Random Numbers
252
-
253
- - User sets random number as `{string}`
254
- - User sets random number from `{int}` to `{int}` as `{string}`
255
-
256
- ### Random Text Content
257
-
258
- - User sets random paragraph as `{string}`
259
- - User sets random paragraph that range between `{int}` and `{int}` as `{string}`
260
- - User sets random sentences that has `{int}` paragraph as `{string}`
261
-
262
- ### Random Characters & Alphanumeric
263
-
264
- - User sets random characters from `{string}` as `{string}`
265
- - User sets random alphanumeric in range from `{int}` to `{int}` as `{string}`
266
-
267
- ### Random Personal Information
268
-
269
- - User sets random email as `{string}`
270
- - User sets random fullname as `{string}`
271
- - User sets random first name as `{string}`
272
- - User sets random last name as `{string}`
273
- - User sets random middle name as `{string}`
274
-
275
- ### Random Internet Data
276
-
277
- - User sets random url as `{string}`
278
-
279
- ### Random Dates
280
-
281
- - User sets random date between `{int}` and `{int}` as `{string}`
282
- - User sets date `{int}` days after today as `{string}`
283
- - User sets date `{int}` days before today as `{string}`
284
-
285
- ### Random from API Response
286
-
287
- - User sends GET request to `{string}` and save `{string}` variable from `{string}` array as `{string}` randomly
288
-
289
- ### Random from Array
290
-
291
- - User sets random value from given `{string}` array as `{string}`
292
-
293
- ---
294
-
295
- # Debugging / Console Output
296
-
297
- - User wants to see saved variables
298
- - User wants to see {string} variable
299
- - User wants to see request body
300
- - User wants to see response body
301
-
302
- ---
303
-
304
- # Random Data Generation
305
-
306
- - User sets random words as `{string}` variable
307
- - User sets random number from `{int}` to `{int}` as `{string}` variable
308
-
309
- # API Data Extraction
310
-
311
- - User sends GET request to `{string}` and save `{string}` variable as a `{string}` randomly
312
-
313
- ---
314
-
315
- ## Assertions
316
-
317
- - User expects `{string}` should be attached
318
- - User expects `{string}` should be checked
319
- - User expects `{string}` should be disabled
320
- - User expects `{string}` should be editable
321
- - User expects `{string}` should be empty
322
- - User expects `{string}` should be enabled
323
- - User expects `{string}` should be focused
324
- - User expects `{string}` should be hidden
325
- - User expects `{string}` should be on the screen
326
- - User expects `{string}` should be visible
327
- - User expects `{string}` should have `{string}` text
328
- - User expects `{string}` should have `{string}` description
329
- - User expects `{string}` should have `{string}` name
330
- - User expects `{string}` should have `{string}` attribute with `{string}` value
331
- - User expects `{string}` should have `{string}` class
332
- - User expects `{string}` should have `{int}` count
333
- - User expects `{string}` should have `{string}` CSS property with `{string}` value
334
- - User expects `{string}` should have `{string}` id
335
- - User expects `{string}` should have `{string}` JavaScript property with `{string}` value
336
- - User expects `{string}` should have `{string}` role
337
- - User expects that full page match with `{string}` screenshot
338
- - User expects that full page match with `{string}` screenshot with {float}% difference
339
- - User expects that page match with `{string}` screenshot
340
- - User expects that page match with `{string}` screenshot with `{float}`% difference
341
- - User expects that `{string}` element match with `{string}` screenshot
342
- - User expects that `{string}` element match with `{string}` screenshot with `{float}`% difference
343
- - User expects `{string}` should have a screenshot
344
- - User expects `{string}` should match `{string}` text
345
- - User expects `{string}` should have `{string}` value
346
- - User expects `{string}` should have `{string}` values
347
- - User expects `{string}` should not be attached
348
- - User expects `{string}` should not be checked
349
- - User expects `{string}` should not be disabled
350
- - User expects `{string}` should not be editable
351
- - User expects `{string}` should not be empty
352
- - User expects `{string}` should not be enabled
353
- - User expects `{string}` should not be focused
354
- - User expects `{string}` should not be hidden
355
- - User expects `{string}` should not be on screen
356
- - User expects `{string}` should not be visible
357
- - User expects `{string}` should not have `{string}` text
358
- - User expects `{string}` should not have `{string}` description
359
- - User expects `{string}` should not have `{string}` name
360
- - User expects `{string}` should not have `{string}` attribute with `{string}` value
361
- - User expects `{string}` should not have `{string}` class
362
- - User expects count of `{string}` should not be `{int}`
363
- - User expects `{string}` should not have `{string}` CSS property with `{string}` value
364
- - User expects `{string}` should not have `{string}` id
365
- - User expects `{string}` should not have `{string}` JavaScript property with `{string}` value
366
- - User expects `{string}` should not have `{string}` role
367
- - User expects `{string}` should not match `{string}` text
368
- - User expects `{string}` should not have `{string}` value
369
- - User expects `{string}` should not have `{string}` values
370
- - User expects the page should not have a screenshot
371
- - User expects the page should not have `{string}` title
372
- - User expects the page url should not be `{string}`
373
- - User is not on `{string}` page
374
- - The response should not be OK
375
- - User expects `{string}` should be `{string}` text
376
- - User expects `{string}` should be close to `{float}` with precision `{int}`
377
- - User expects `{string}` should be defined
378
- - User expects `{string}` should be falsy
379
- - User expects `{string}` should be greater than `{float}`
380
- - User expects `{string}` should be greater than or equal to `{float}`
381
- - User expects `{string}` should be an instance of `{string}`
382
- - User expects `{string}` should be less than `{float}`
383
- - User expects `{string}` should be less than or equal to `{float}`
384
- - User expects `{string}` should be NaN
385
- - User expects `{string}` should be null
386
- - User expects `{string}` should be truthy
387
- - User expects `{string}` should be undefined
388
- - User expects `{string}` should have `{string}` substring
389
- - User expects `{string}` should contain equal `{string}`
390
- - User expects `{string}` should equal `{int}`
391
- - User expects length of `{string}` should be `{int}`
392
- - User expects `{string}` should have `{string}` property
393
- - User expects `{string}` should match `{string}` regex
394
- - User expects `{string}` should match `{string}` object
395
- - User expects `{string}` should strictly equal `{string}`
396
- - The function should throw
397
- - User expects `{string}` should be any instance of `{string}`
398
- - User expects `{string}` may be anything
399
- - User expects `{string}` should contain `{string}` array elements
400
- - User expects `{string}` should be close to `{float}` with precision `{int}`
401
- - User expects `{string}` should contain `{string}` object properties
402
- - User expects `{string}` should have `{string}` substring
403
- - User expects `{string}` should match `{string}` regex
404
- - User expects `{string}` should not have `{string}` text
405
- - User expects `{string}` should not be close to `{float}` with precision `{int}`
406
- - User expects `{string}` should not be defined
407
- - User expects `{string}` should not be falsy
408
- - User expects `{string}` should not be greater than `{float}`
409
- - User expects `{string}` should not be greater than or equal to `{float}`
410
- - User expects `{string}` should not be instance of `{string}`
411
- - User expects `{string}` should not be less than `{float}`
412
- - User expects `{string}` should not be less than or equal to `{float}`
413
- - User expects `{string}` should not be NaN
414
- - User expects `{string}` should not be null
415
- - User expects `{string}` should not be truthy
416
- - User expects `{string}` should not be undefined
417
- - User expects `{string}` should not have `{string}` substring
418
- - User expects `{string}` should not contain equal `{string}`
419
- - User expects `{string}` should not equal `{string}`
420
- - User expects length of `{string}` should not be `{int}`
421
- - User expects `{string}` should not have `{string}` property
422
- - User expects `{string}` should not match `{string}` regex
423
- - User expects `{string}` should not match `{string}` object
424
- - The function should not throw
425
- - User expects `{string}` should not be any instance of `{string}`
426
- - User expects `{string}` may not be anything
427
- - User expects `{string}` should not contain `{string}` array elements
428
- - User expects `{string}` should not be close to `{float}` with precision `{int}`
429
- - User expects `{string}` should not contain `{string}` object properties
430
- - User expects `{string}` should not contain `{string}` substring
431
- - User expects `{string}` should not match `{string}` regex
432
- - User expects that response should have `{int}` status code
433
- - User expects that response body should match `{string}` schema
1
+ # Step Definitions
2
+
3
+ ## Table of Contents
4
+
5
+ - [Mouse Actions](#mouse-actions)
6
+ - [Keyboard Actions](#keyboard-actions)
7
+ - [Browser Actions](#browser-actions)
8
+ - [Page Actions](#page-actions)
9
+ - [Frame Actions](#frame-actions)
10
+ - [API Actions](#api-actions)
11
+ - [Variable Management](#variable-management)
12
+ - [Debugging / Console Output](#debugging--console-output)
13
+ - [Generic HTTP Request](#generic-http-request)
14
+ - [Assertions](#assertions)
15
+
16
+ ---
17
+
18
+ # Mouse Actions
19
+
20
+ ## Click Actions
21
+
22
+ - User clicks `{string}`
23
+ - User clicks `{string}` with force
24
+ - User clicks `{string}` at `{int}, {int}` position
25
+ - User clicks `{string}` at `{int}, {int}` position with force
26
+ - User clicks at `{int}, {int}` coordinates
27
+ - User clicks at `{int}, {int}` coordinates with click count `{int}` and delay `{int}`
28
+ - User clicks at `{int}, {int}` coordinates with force
29
+ - User clicks `{string}` with button `{string}`
30
+ - User clicks `{string}` with button `{string}` and force
31
+
32
+ ## Double Click Actions
33
+
34
+ - User double clicks `{string}`
35
+ - User double clicks `{string}` with force
36
+ - User double clicks `{string}` at `{int}, {int}` position
37
+ - User double clicks `{string}` at `{int}, {int}` position with force
38
+ - User double clicks at `{int}, {int}` coordinates
39
+ - User double clicks at `{int}, {int}` coordinates with click count `{int}` and delay `{int}`
40
+ - User double clicks at `{int}, {int}` coordinates with force
41
+
42
+ ## Mouse Movement Actions
43
+
44
+ - User moves to `{int}, {int}` coordinates
45
+ - User scrolls the mouse wheel at `{int}, {int}` coordinates
46
+
47
+ ## Hover Actions
48
+
49
+ - User hovers over `{string}`
50
+ - User hovers over `{string}` with force
51
+ - User hovers over `{string}` at `{int}, {int}` position
52
+ - User hovers over `{string}` at `{int}, {int}` position with force
53
+
54
+ ## Focus Actions
55
+
56
+ - User focuses on `{string}`
57
+ - User focuses on `{string}` with force
58
+ - User focuses on `{string}` at `{int}, {int}` position
59
+ - User focuses on `{string}` at `{int}, {int}` position with force
60
+
61
+ ## Drag Actions
62
+
63
+ - User drags `{string}` to `{string}`
64
+ - User drags `{string}` to `{int}, {int}` position
65
+
66
+ ## Selection Actions
67
+
68
+ - User selects by value `{string}` from `{string}`
69
+ - User selects by text `{string}` from `{string}`
70
+
71
+ ## Checkbox Actions
72
+
73
+ - User checks `{string}`
74
+ - User unchecks `{string}`
75
+
76
+ ## Scroll Actions
77
+
78
+ - User scrolls into view for `{string}`
79
+
80
+ ---
81
+
82
+ # Keyboard Actions
83
+
84
+ ## Press Actions
85
+
86
+ - User presses `{string}` on `{string}`
87
+ - User presses keys `{string}` sequentially on `{string}`
88
+ - User presses keys `{string}` sequentially with delay `{int}` on `{string}`
89
+
90
+ ## Input Actions
91
+
92
+ - User types `{string}` in `{string}`
93
+ - User types `{string}` with delay `{int}`
94
+ - User inserts text `{string}`
95
+ - User clears `{string}`
96
+
97
+ ## Selection Actions
98
+
99
+ - User selects text in `{string}`
100
+
101
+ ## File Input Actions
102
+
103
+ - User sets input files `{string}` for `{string}`
104
+
105
+ ## Key State Actions
106
+
107
+ - User holds down `{string}`
108
+ - User releases `{string}`
109
+ - User presses `{string}`
110
+
111
+ # Browser Actions
112
+
113
+ ## Cookie Actions
114
+
115
+ - User sets `{string}` cookies
116
+
117
+ ## Accessibility Actions
118
+
119
+ ### Full Page Checks
120
+ - User checks accessibility of current page
121
+ - User checks accessibility of `{string}` page
122
+
123
+ ### Element Checks
124
+ - User checks accessibility of `{string}` element
125
+ - User checks accessibility of `{string}` element on the `{string}` page
126
+
127
+ ### WCAG-Specific Checks
128
+ > For valid WCAG tags, refer to the [axe-core Tags Documentation](https://www.deque.com/axe/core-documentation/api-documentation/#axecore-tags)
129
+
130
+ - User checks accessibility of current page due to `{string}` WCAG
131
+ - User checks accessibility of `{string}` page due to `{string}` WCAG
132
+ - User checks accessibility of `{string}` element due to `{string}` WCAG
133
+ - User checks accessibility of `{string}` element on the `{string}` page due to `{string}` WCAG
134
+
135
+ ---
136
+
137
+ # Page Actions
138
+
139
+ ## Navigation Actions
140
+
141
+ - User navigates to `{string}` page
142
+ - User navigates previous page
143
+ - User navigates next page
144
+
145
+ ## URL Actions
146
+
147
+ - User gets URL of page
148
+
149
+ ## Wait Actions
150
+
151
+ - User waits `{int}` seconds
152
+ - User waits `{int}` milliseconds
153
+ - User waits `{int}` minutes
154
+
155
+ ---
156
+
157
+ # Frame Actions
158
+
159
+ ## Screenshot Actions
160
+
161
+ - User takes a screenshot of `{string}`
162
+
163
+ ## Content and Locator Actions
164
+
165
+ - User gets the content frame of `{string}`
166
+ - User gets the frame locator of `{string}`
167
+
168
+ ## Element Retrieval Actions
169
+
170
+ - User gets the `{int} th` element of `{string}`
171
+ - User gets the first element of `{string}`
172
+ - User gets the last element of `{string}`
173
+ - User filters elements of `{string}` with filter `{string}`
174
+
175
+ ## Counting Actions
176
+
177
+ - User counts the elements of `{string}`
178
+
179
+ ## Accessibility-Based Retrieval Actions
180
+
181
+ - User gets the element with alt text `{string}`
182
+ - User gets the element with label `{string}`
183
+ - User gets the element with placeholder `{string}`
184
+ - User gets the element with role `{string}`
185
+ - User gets the element with testId `{string}`
186
+ - User gets the element with testId `{string}` (assuming you meant testId twice)
187
+
188
+ ---
189
+
190
+ # API Actions
191
+
192
+ ## GET Requests
193
+
194
+ - User sends GET request to `{string}`
195
+ - User sends GET request to `{string}` with payload:
196
+ - User sends GET request to `{string}` and saves `{string}` variables
197
+ - User sends GET request to `{string}` with payload and saves `{string}` variables
198
+
199
+ ## HEAD Requests
200
+
201
+ - User sends HEAD request to `{string}`
202
+
203
+ ## POST Requests
204
+
205
+ - User sends POST request to `{string}` with payload:
206
+ - User sends POST request to `{string}` with payload and saves `{string}` variables
207
+ - User sends multipart POST request to `{string}` with payload:
208
+ - User sends multipart POST request to `{string}` with payload and `{string}` variables
209
+
210
+ ## PUT Requests
211
+
212
+ - User sends PUT request to `{string}` with payload:
213
+ - User sends PUT request to `{string}` with payload and saves `{string}` variables
214
+ - User sends multipart PUT request to `{string}` with payload:
215
+ - User sends multipart PUT request to `{string}` with payload and saves `{string}` variables
216
+
217
+ ## PATCH Requests
218
+
219
+ - User sends PATCH request to `{string}` with payload:
220
+ - User sends PATCH request to `{string}` with payload and saves `{string}` variables
221
+ - User sends multipart PATCH request to `{string}` with payload:
222
+ - User sends multipart PATCH request to `{string}` with payload and saves `{string}` variables
223
+
224
+ ## DELETE Requests
225
+
226
+ - User sends DELETE request to `{string}`
227
+ - User sends DELETE request to `{string}` and saves `{string}` variables
228
+ - User sends DELETE request to `{string}` with payload:
229
+ - User sends DELETE request to `{string}` with payload and saves `{string}` variables
230
+
231
+ ---
232
+
233
+ # Variable Management
234
+
235
+ ## Manual Variable Assignment
236
+
237
+ - User saves `{string}` variable from response as `{string}`
238
+ - User saves `{string}` variable as `{string}`
239
+
240
+ ## Random Variable Management
241
+
242
+ ### Random Words
243
+
244
+ - User sets random word as `{string}`
245
+ - User sets random word that has `{int}` character as `{string}`
246
+ - User sets random word that has character between `{int}` and `{int}` as `{string}`
247
+ - User sets random words as `{string}`
248
+ - User sets random `{int}` words as `{string}`
249
+ - User sets random words that range between `{int}` and `{int}` as `{string}`
250
+
251
+ ### Random Numbers
252
+
253
+ - User sets random number as `{string}`
254
+ - User sets random number from `{int}` to `{int}` as `{string}`
255
+
256
+ ### Random Text Content
257
+
258
+ - User sets random paragraph as `{string}`
259
+ - User sets random paragraph that range between `{int}` and `{int}` as `{string}`
260
+ - User sets random sentences that has `{int}` paragraph as `{string}`
261
+
262
+ ### Random Characters & Alphanumeric
263
+
264
+ - User sets random characters from `{string}` as `{string}`
265
+ - User sets random alphanumeric in range from `{int}` to `{int}` as `{string}`
266
+
267
+ ### Random Personal Information
268
+
269
+ - User sets random email as `{string}`
270
+ - User sets random fullname as `{string}`
271
+ - User sets random first name as `{string}`
272
+ - User sets random last name as `{string}`
273
+ - User sets random middle name as `{string}`
274
+
275
+ ### Random Internet Data
276
+
277
+ - User sets random url as `{string}`
278
+
279
+ ### Random Dates
280
+
281
+ - User sets random date between `{int}` and `{int}` as `{string}`
282
+ - User sets date `{int}` days after today as `{string}`
283
+ - User sets date `{int}` days before today as `{string}`
284
+
285
+ ### Random from API Response
286
+
287
+ - User sends GET request to `{string}` and save `{string}` variable from `{string}` array as `{string}` randomly
288
+
289
+ ### Random from Array
290
+
291
+ - User sets random value from given `{string}` array as `{string}`
292
+
293
+ ---
294
+
295
+ # Debugging / Console Output
296
+
297
+ - User wants to see saved variables
298
+ - User wants to see {string} variable
299
+ - User wants to see request body
300
+ - User wants to see response body
301
+
302
+ ---
303
+
304
+ # Random Data Generation
305
+
306
+ - User sets random words as `{string}` variable
307
+ - User sets random number from `{int}` to `{int}` as `{string}` variable
308
+
309
+ # API Data Extraction
310
+
311
+ - User sends GET request to `{string}` and save `{string}` variable as a `{string}` randomly
312
+
313
+ ---
314
+
315
+ ## Assertions
316
+
317
+ - User expects `{string}` should be attached
318
+ - User expects `{string}` should be checked
319
+ - User expects `{string}` should be disabled
320
+ - User expects `{string}` should be editable
321
+ - User expects `{string}` should be empty
322
+ - User expects `{string}` should be enabled
323
+ - User expects `{string}` should be focused
324
+ - User expects `{string}` should be hidden
325
+ - User expects `{string}` should be on the screen
326
+ - User expects `{string}` should be visible
327
+ - User expects `{string}` should have `{string}` text
328
+ - User expects `{string}` should have `{string}` description
329
+ - User expects `{string}` should have `{string}` name
330
+ - User expects `{string}` should have `{string}` attribute with `{string}` value
331
+ - User expects `{string}` should have `{string}` class
332
+ - User expects `{string}` should have `{int}` count
333
+ - User expects `{string}` should have `{string}` CSS property with `{string}` value
334
+ - User expects `{string}` should have `{string}` id
335
+ - User expects `{string}` should have `{string}` JavaScript property with `{string}` value
336
+ - User expects `{string}` should have `{string}` role
337
+ - User expects that full page match with `{string}` screenshot
338
+ - User expects that full page match with `{string}` screenshot with {float}% difference
339
+ - User expects that page match with `{string}` screenshot
340
+ - User expects that page match with `{string}` screenshot with `{float}`% difference
341
+ - User expects that `{string}` element match with `{string}` screenshot
342
+ - User expects that `{string}` element match with `{string}` screenshot with `{float}`% difference
343
+ - User expects that `{string}` screenshot match with `{string}` screenshot
344
+ - User expects that `{string}` screenshot match with `{string}` screenshot with `{float}`% difference
345
+ - User expects `{string}` should have a screenshot
346
+ - User expects `{string}` should match `{string}` text
347
+ - User expects `{string}` should have `{string}` value
348
+ - User expects `{string}` should have `{string}` values
349
+ - User expects `{string}` should not be attached
350
+ - User expects `{string}` should not be checked
351
+ - User expects `{string}` should not be disabled
352
+ - User expects `{string}` should not be editable
353
+ - User expects `{string}` should not be empty
354
+ - User expects `{string}` should not be enabled
355
+ - User expects `{string}` should not be focused
356
+ - User expects `{string}` should not be hidden
357
+ - User expects `{string}` should not be on screen
358
+ - User expects `{string}` should not be visible
359
+ - User expects `{string}` should not have `{string}` text
360
+ - User expects `{string}` should not have `{string}` description
361
+ - User expects `{string}` should not have `{string}` name
362
+ - User expects `{string}` should not have `{string}` attribute with `{string}` value
363
+ - User expects `{string}` should not have `{string}` class
364
+ - User expects count of `{string}` should not be `{int}`
365
+ - User expects `{string}` should not have `{string}` CSS property with `{string}` value
366
+ - User expects `{string}` should not have `{string}` id
367
+ - User expects `{string}` should not have `{string}` JavaScript property with `{string}` value
368
+ - User expects `{string}` should not have `{string}` role
369
+ - User expects `{string}` should not match `{string}` text
370
+ - User expects `{string}` should not have `{string}` value
371
+ - User expects `{string}` should not have `{string}` values
372
+ - User expects the page should not have a screenshot
373
+ - User expects the page should not have `{string}` title
374
+ - User expects the page url should not be `{string}`
375
+ - User is not on `{string}` page
376
+ - The response should not be OK
377
+ - User expects `{string}` should be `{string}` text
378
+ - User expects `{string}` should be close to `{float}` with precision `{int}`
379
+ - User expects `{string}` should be defined
380
+ - User expects `{string}` should be falsy
381
+ - User expects `{string}` should be greater than `{float}`
382
+ - User expects `{string}` should be greater than or equal to `{float}`
383
+ - User expects `{string}` should be an instance of `{string}`
384
+ - User expects `{string}` should be less than `{float}`
385
+ - User expects `{string}` should be less than or equal to `{float}`
386
+ - User expects `{string}` should be NaN
387
+ - User expects `{string}` should be null
388
+ - User expects `{string}` should be truthy
389
+ - User expects `{string}` should be undefined
390
+ - User expects `{string}` should have `{string}` substring
391
+ - User expects `{string}` should contain equal `{string}`
392
+ - User expects `{string}` should equal `{int}`
393
+ - User expects length of `{string}` should be `{int}`
394
+ - User expects `{string}` should have `{string}` property
395
+ - User expects `{string}` should match `{string}` regex
396
+ - User expects `{string}` should match `{string}` object
397
+ - User expects `{string}` should strictly equal `{string}`
398
+ - The function should throw
399
+ - User expects `{string}` should be any instance of `{string}`
400
+ - User expects `{string}` may be anything
401
+ - User expects `{string}` should contain `{string}` array elements
402
+ - User expects `{string}` should be close to `{float}` with precision `{int}`
403
+ - User expects `{string}` should contain `{string}` object properties
404
+ - User expects `{string}` should have `{string}` substring
405
+ - User expects `{string}` should match `{string}` regex
406
+ - User expects `{string}` should not have `{string}` text
407
+ - User expects `{string}` should not be close to `{float}` with precision `{int}`
408
+ - User expects `{string}` should not be defined
409
+ - User expects `{string}` should not be falsy
410
+ - User expects `{string}` should not be greater than `{float}`
411
+ - User expects `{string}` should not be greater than or equal to `{float}`
412
+ - User expects `{string}` should not be instance of `{string}`
413
+ - User expects `{string}` should not be less than `{float}`
414
+ - User expects `{string}` should not be less than or equal to `{float}`
415
+ - User expects `{string}` should not be NaN
416
+ - User expects `{string}` should not be null
417
+ - User expects `{string}` should not be truthy
418
+ - User expects `{string}` should not be undefined
419
+ - User expects `{string}` should not have `{string}` substring
420
+ - User expects `{string}` should not contain equal `{string}`
421
+ - User expects `{string}` should not equal `{string}`
422
+ - User expects length of `{string}` should not be `{int}`
423
+ - User expects `{string}` should not have `{string}` property
424
+ - User expects `{string}` should not match `{string}` regex
425
+ - User expects `{string}` should not match `{string}` object
426
+ - The function should not throw
427
+ - User expects `{string}` should not be any instance of `{string}`
428
+ - User expects `{string}` may not be anything
429
+ - User expects `{string}` should not contain `{string}` array elements
430
+ - User expects `{string}` should not be close to `{float}` with precision `{int}`
431
+ - User expects `{string}` should not contain `{string}` object properties
432
+ - User expects `{string}` should not contain `{string}` substring
433
+ - User expects `{string}` should not match `{string}` regex
434
+ - User expects that response should have `{int}` status code
435
+ - User expects that response body should match `{string}` schema