Skip to content

Commit 3f6871d

Browse files
committed
Improve cross-frame drag and drop reliability and tests
1 parent fb7faa4 commit 3f6871d

3 files changed

Lines changed: 357 additions & 131 deletions

File tree

Lines changed: 70 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,87 @@
11
*** Settings ***
2-
Documentation Tests for the custom Drag And Drop To Frame keyword
2+
Documentation Tests for the custom Drag And Drop Across Frames keyword
33
... in cross-frame drag-and-drop scenarios.
44
Resource ../resource.robot
55
Test Setup Go To Page "frames/draganddrop.html"
6-
Force Tags draganddrop
76

87
*** Test Cases ***
9-
Drag And Drop To Frame Works With Local HTML
10-
[Documentation] Verifies successful cross-frame drag-and-drop from default content to a target inside an iframe.
11-
Wait Until Page Contains Element id=source timeout=10s
12-
Drag And Drop To Frame id=source id=target id=previewFrame
13-
Select Frame id=previewFrame
8+
Drag And Drop Across Frames Works From Default Content
9+
[Documentation] Verifies drag-and-drop from default content to a target inside an iframe.
10+
Wait Until Page Contains Element id=defaultSource 10s
11+
Drag And Drop Across Frames id=defaultSource id=target id=targetFrame
12+
Select Frame id=targetFrame
1413
Element Should Contain id=target Dropped Successfully!
1514
Unselect Frame
1615

17-
Drag And Drop To Frame Returns To Default Content
16+
Drag And Drop Across Frames Works From Source Frame
17+
[Documentation] Verifies drag-and-drop from a source iframe to a target iframe.
18+
Wait Until Page Contains Element id=sourceFrame 10s
19+
Select Frame id=sourceFrame
20+
Wait Until Page Contains Element id=frameSource 10s
21+
Unselect Frame
22+
Drag And Drop Across Frames id=frameSource id=target id=targetFrame id=sourceFrame
23+
Select Frame id=targetFrame
24+
Element Should Contain id=target Dropped Successfully!
25+
Unselect Frame
26+
27+
Drag And Drop Across Frames Returns To Default Content
1828
[Documentation] Verifies that the keyword returns to default content after execution.
19-
Wait Until Page Contains Element id=source timeout=10s
20-
Drag And Drop To Frame id=source id=target id=previewFrame
21-
Element Should Be Visible id=previewFrame
29+
Wait Until Page Contains Element id=defaultSource 10s
30+
Drag And Drop Across Frames id=defaultSource id=target id=targetFrame
31+
Element Should Be Visible id=targetFrame
2232

23-
Drag And Drop To Frame Hides Source Element
24-
[Documentation] Verifies that the source element becomes hidden after a successful drop.
25-
Wait Until Page Contains Element id=source timeout=10s
26-
Drag And Drop To Frame id=source id=target id=previewFrame
27-
Element Should Not Be Visible id=source
33+
Drag And Drop Across Frames Hides Default Source Element
34+
[Documentation] Verifies that the default source element becomes hidden after a successful drop.
35+
Wait Until Page Contains Element id=defaultSource 10s
36+
Drag And Drop Across Frames id=defaultSource id=target id=targetFrame
37+
Element Should Not Be Visible id=defaultSource
38+
39+
Drag And Drop Across Frames Hides Frame Source Element
40+
[Documentation] Verifies that the frame source element becomes hidden after a successful drop.
41+
Wait Until Page Contains Element id=sourceFrame 10s
42+
Drag And Drop Across Frames id=frameSource id=target id=targetFrame id=sourceFrame
43+
Select Frame id=sourceFrame
44+
Element Should Not Be Visible id=frameSource
45+
Unselect Frame
2846

2947
Standard Drag And Drop Fails When Target Is Inside Frame
3048
[Documentation] Verifies that the standard Drag And Drop keyword cannot complete this cross-frame scenario.
31-
Wait Until Page Contains Element id=source timeout=10s
32-
Run Keyword And Expect Error * Drag And Drop id=source id=target
33-
Select Frame id=previewFrame
49+
Wait Until Page Contains Element id=defaultSource 10s
50+
Run Keyword And Expect Error
51+
... Element with locator 'id=target' not found.
52+
... Drag And Drop id=defaultSource id=target
53+
Select Frame id=targetFrame
3454
Element Should Not Contain id=target Dropped Successfully!
3555
Unselect Frame
3656

37-
Drag And Drop To Frame Fails With Invalid Frame
38-
[Documentation] Verifies that the keyword fails when the frame locator is invalid.
39-
Wait Until Page Contains Element id=source timeout=10s
40-
Run Keyword And Expect Error * Drag And Drop To Frame
41-
... id=source id=target id=missingFrame
42-
43-
Drag And Drop To Frame Fails With Invalid Target
44-
[Documentation] Verifies that the keyword fails when the target element is not found inside the iframe.
45-
Wait Until Page Contains Element id=source timeout=10s
46-
Run Keyword And Expect Error * Drag And Drop To Frame
47-
... id=source id=missingTarget id=previewFrame
57+
Drag And Drop Across Frames Fails With Invalid Target Frame
58+
[Documentation] Verifies that the keyword fails when the target frame locator is invalid.
59+
Wait Until Page Contains Element id=defaultSource 10s
60+
Run Keyword And Expect Error
61+
... Element with locator 'id=missingFrame' not found.
62+
... Drag And Drop Across Frames
63+
... id=defaultSource id=target id=missingFrame
64+
65+
Drag And Drop Across Frames Fails With Invalid Target
66+
[Documentation] Verifies that the keyword fails when the target element is not found inside the target iframe.
67+
Wait Until Page Contains Element id=defaultSource 10s
68+
Run Keyword And Expect Error
69+
... Element with locator 'id=missingTarget' not found.
70+
... Drag And Drop Across Frames
71+
... id=defaultSource id=missingTarget id=targetFrame
72+
73+
Drag And Drop Across Frames Fails With Invalid Source Frame
74+
[Documentation] Verifies that the keyword fails when the source frame locator is invalid.
75+
Wait Until Page Contains Element id=defaultSource 10s
76+
Run Keyword And Expect Error
77+
... Element with locator 'id=missingSourceFrame' not found.
78+
... Drag And Drop Across Frames
79+
... id=frameSource id=target id=targetFrame id=missingSourceFrame
80+
81+
Drag And Drop Across Frames Fails With Invalid Source
82+
[Documentation] Verifies that the keyword fails when the source element is not found.
83+
Wait Until Page Contains Element id=defaultSource 10s
84+
Run Keyword And Expect Error
85+
... Element with locator 'id=missingSource' not found.
86+
... Drag And Drop Across Frames
87+
... id=missingSource id=target id=targetFrame

0 commit comments

Comments
 (0)