104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 | <?xml version="1.0" encoding="UTF-8"?>
114 | <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
115 | <suite thread-count="3" guice-stage="DEVELOPMENT" verbose="0" name="Suite" parallel="methods">
116 | <listeners>
117 | <listener class-name="com.listener.ListenerClass"/>
118 | <listener class-name="com.listener.AnnotationTransformer"/>
119 | </listeners>
120 | <test thread-count="3" verbose="0" name="Test" parallel="methods">
121 | <classes>
122 | <class name="com.testcases.HomePageTests"/>
123 | <class name="com.testcases.SignInPageTests"/>
124 | <class name="com.testcases.BaseTest"/>
125 | </classes>
126 | </test> <!-- Test -->
127 | </suite> <!-- Suite -->
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 | Test (3 classes)
139 |
140 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 |
186 |
187 |
com.testcases.SignInPageTests
188 |
189 | setUp
190 |
191 | afterSuite
192 |
193 |
194 |
195 |
196 |
com.testcases.BaseTest
197 |
198 | setUp
199 |
200 | afterSuite
201 |
202 |
203 |
204 |
205 |
206 |
207 |
208 |
209 |
210 |
211 |
212 |
com.testcases.HomePageTests
213 |
214 | setUp
215 | 0 ms
216 |
217 |
218 | setUpExtentReports
219 | 30058 ms
220 |
221 |
222 |
223 |
com.testcases.SignInPageTests
224 |
225 | setUpExtentReports
226 | 30058 ms
227 |
228 |
229 |
230 |
com.testcases.HomePageTests
231 |
232 |
233 |
234 |
validateSearchInHomePage({searchvalue=Blouse, password=, email=, browser=chrome, errormessage=, TestCaseName=validateSearchIn...)
235 |
30271 ms
236 |
237 |
238 |
239 |
240 |
validateSearchInHomePage({searchvalue=Printed Dress, password=, email=, browser=firefox, errormessage=, TestCaseName=validate...)
241 |
30271 ms
242 |
243 |
244 |
245 |
246 |
validateErrorMessageOnLogin({searchvalue=, password=abcd1234, email=abcd@gmail.com, browser=firefox, errormessage=There is 1 err...)
247 |
30271 ms
248 |
249 |
250 |
251 |
com.testcases.SignInPageTests
252 |
253 |
254 |
255 |
validateErrorMessageOnLoginSignInPage({searchvalue=, password=abcd345, email=wer1234@gmail.com, browser=chrome, errormessage=There is 1 er...)
256 |
30272 ms
257 |
258 |
259 |
260 |
261 |
validateErrorMessageOnLoginSignInPage({searchvalue=, password=abcd1234, email=abcd@gmail.com, browser=firefox, errormessage=There is 1 err...)
262 |
30272 ms
263 |
264 |
265 |
266 |
com.testcases.HomePageTests
267 |
268 |
269 |
270 |
validateErrorMessageOnLogin({searchvalue=, password=abcd345, email=wer1234@gmail.com, browser=chrome, errormessage=There is 1 er...)
271 |
30272 ms
272 |
273 |
274 | tearDown
275 | 44982 ms
276 |
277 |
278 | afterSuite
279 | 45253 ms
280 |
281 |
282 |
283 |
284 |
285 |
286 |
287 |
--------------------------------------------------------------------------------
/target/surefire-reports/junitreports/TEST-com.testcases.HomePageTests.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
15 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
--------------------------------------------------------------------------------
/target/surefire-reports/junitreports/TEST-com.testcases.SignInPageTests.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/target/surefire-reports/old/Suite/Test.properties:
--------------------------------------------------------------------------------
1 | [SuiteResult context=Test]
--------------------------------------------------------------------------------
/target/surefire-reports/old/Suite/classes.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Class name
4 | Method name
5 | Groups
6 |
7 | com.testcases.HomePageTests
8 |
9 |
10 | @Test
11 |
12 |
13 |
14 | validateErrorMessageOnLogin
15 |
16 |
17 |
18 | validateSearchInHomePage
19 |
20 |
21 | @BeforeClass
22 |
23 |
24 |
25 | setUpExtentReports
26 |
27 |
28 | @BeforeMethod
29 |
30 |
31 | @AfterMethod
32 |
33 |
34 |
35 | quitBrowser
36 |
37 |
38 | @AfterClass
39 |
40 |
41 | com.testcases.SignInPageTests
42 |
43 |
44 | @Test
45 |
46 |
47 |
48 | validateErrorMessageOnLoginSignInPage
49 |
50 |
51 | @BeforeClass
52 |
53 |
54 |
55 | setUpExtentReports
56 |
57 |
58 | @BeforeMethod
59 |
60 |
61 | @AfterMethod
62 |
63 |
64 |
65 | quitBrowser
66 |
67 |
68 | @AfterClass
69 |
70 |
71 |
--------------------------------------------------------------------------------
/target/surefire-reports/old/Suite/groups.html:
--------------------------------------------------------------------------------
1 |
Groups used for this test run
--------------------------------------------------------------------------------
/target/surefire-reports/old/Suite/index.html:
--------------------------------------------------------------------------------
1 |
Results for Suite
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/target/surefire-reports/old/Suite/main.html:
--------------------------------------------------------------------------------
1 |
Results for Suite
2 | Select a result on the left-hand pane.
3 |
--------------------------------------------------------------------------------
/target/surefire-reports/old/Suite/methods-alphabetical.html:
--------------------------------------------------------------------------------
1 |
Methods run, sorted chronologically >> means before, << means after
Suite
(Hover the method name to see the test class name)
2 |
3 | Time Delta (ms) Suite configuration Test configuration Class configuration Groups configuration Method configuration Test method Thread Instances
4 | 19/10/29 09:21:27 0 <<afterSuite
5 | main@1750286943
6 | 19/10/29 09:20:41 -45248 >>setUp
7 | main@1750286943
8 | 19/10/29 09:21:11 -15195 >>setUpExtentReports
9 | TestNG-test=Test-1@675680182
10 | 19/10/29 09:21:11 -15195 >>setUpExtentReports
11 | TestNG-test=Test-3@1127945571
12 | 19/10/29 09:21:26 -270 <<tearDown
13 | main@1750286943
14 | 19/10/29 09:21:12 -14982 validateErrorMessageOnLogin
15 | TestNG-PoolService-1@76989334
16 | 19/10/29 09:21:12 -14981 validateErrorMessageOnLogin
17 | TestNG-PoolService-1@76989334
18 | 19/10/29 09:21:12 -14981 validateErrorMessageOnLoginSignInPage
19 | TestNG-PoolService-1@355872914
20 | 19/10/29 09:21:12 -14981 validateErrorMessageOnLoginSignInPage
21 | TestNG-PoolService-1@355872914
22 | 19/10/29 09:21:12 -14982 validateSearchInHomePage
23 | TestNG-PoolService-1@367019384
24 | 19/10/29 09:21:12 -14982 validateSearchInHomePage
25 | TestNG-PoolService-1@367019384
26 |
27 |
--------------------------------------------------------------------------------
/target/surefire-reports/old/Suite/methods-not-run.html:
--------------------------------------------------------------------------------
1 |
Methods that were not run
2 | com.testcases.BaseTest.setUp
3 | com.testcases.BaseTest.setUp
4 | com.testcases.BaseTest.afterSuite
5 | com.testcases.BaseTest.afterSuite
6 |
--------------------------------------------------------------------------------
/target/surefire-reports/old/Suite/methods.html:
--------------------------------------------------------------------------------
1 |
Methods run, sorted chronologically >> means before, << means after
Suite
(Hover the method name to see the test class name)
2 |
3 | Time Delta (ms) Suite configuration Test configuration Class configuration Groups configuration Method configuration Test method Thread Instances
4 | 19/10/29 09:20:41 0 >>setUp
5 | main@1750286943
6 | 19/10/29 09:21:11 30053 >>setUpExtentReports
7 | TestNG-test=Test-1@675680182
8 | 19/10/29 09:21:11 30053 >>setUpExtentReports
9 | TestNG-test=Test-3@1127945571
10 | 19/10/29 09:21:12 30266 validateSearchInHomePage
11 | TestNG-PoolService-1@367019384
12 | 19/10/29 09:21:12 30267 validateErrorMessageOnLoginSignInPage
13 | TestNG-PoolService-1@355872914
14 | 19/10/29 09:21:12 30266 validateSearchInHomePage
15 | TestNG-PoolService-1@367019384
16 | 19/10/29 09:21:12 30267 validateErrorMessageOnLoginSignInPage
17 | TestNG-PoolService-1@355872914
18 | 19/10/29 09:21:12 30266 validateErrorMessageOnLogin
19 | TestNG-PoolService-1@76989334
20 | 19/10/29 09:21:12 30267 validateErrorMessageOnLogin
21 | TestNG-PoolService-1@76989334
22 | 19/10/29 09:21:26 44978 <<tearDown
23 | main@1750286943
24 | 19/10/29 09:21:27 45248 <<afterSuite
25 | main@1750286943
26 |
27 |
--------------------------------------------------------------------------------
/target/surefire-reports/old/Suite/reporter-output.html:
--------------------------------------------------------------------------------
1 |
Reporter output
--------------------------------------------------------------------------------
/target/surefire-reports/old/Suite/testng.xml.html:
--------------------------------------------------------------------------------
1 |
testng.xml for Suite <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite thread-count="3" guice-stage="DEVELOPMENT" verbose="0" name="Suite" parallel="methods">
<listeners>
<listener class-name="com.listener.ListenerClass"/>
<listener class-name="com.listener.AnnotationTransformer"/>
</listeners>
<test thread-count="3" verbose="0" name="Test" parallel="methods">
<classes>
<class name="com.testcases.HomePageTests"/>
<class name="com.testcases.SignInPageTests"/>
<class name="com.testcases.BaseTest"/>
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
--------------------------------------------------------------------------------
/target/surefire-reports/old/Suite/toc.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
Results for Suite
4 |
5 |
6 |
7 |
8 |
Results forSuite
9 |
23 |
30 |
--------------------------------------------------------------------------------
/target/surefire-reports/old/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
Test results
6 |
Suite Passed Failed Skipped testng.xml
7 | Total 0 0 0
8 | Suite
9 | 0 0 0 Link
10 |
--------------------------------------------------------------------------------
/target/surefire-reports/testng-failed.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/target/surefire-reports/testng-reports.css:
--------------------------------------------------------------------------------
1 | body {
2 | margin: 0px 0px 5px 5px;
3 | }
4 |
5 | ul {
6 | margin: 0px;
7 | }
8 |
9 | li {
10 | list-style-type: none;
11 | }
12 |
13 | a {
14 | text-decoration: none;
15 | }
16 |
17 | a:hover {
18 | text-decoration: underline;
19 | }
20 |
21 | .navigator-selected {
22 | background: #ffa500;
23 | }
24 |
25 | .wrapper {
26 | position: absolute;
27 | top: 60px;
28 | bottom: 0;
29 | left: 400px;
30 | right: 0;
31 | overflow: auto;
32 | }
33 |
34 | .navigator-root {
35 | position: absolute;
36 | top: 60px;
37 | bottom: 0;
38 | left: 0;
39 | width: 400px;
40 | overflow-y: auto;
41 | }
42 |
43 | .suite {
44 | margin: 0px 10px 10px 0px;
45 | background-color: #fff8dc;
46 | }
47 |
48 | .suite-name {
49 | padding-left: 10px;
50 | font-size: 25px;
51 | font-family: Times;
52 | }
53 |
54 | .main-panel-header {
55 | padding: 5px;
56 | background-color: #9FB4D9; //afeeee;
57 | font-family: monospace;
58 | font-size: 18px;
59 | }
60 |
61 | .main-panel-content {
62 | padding: 5px;
63 | margin-bottom: 10px;
64 | background-color: #DEE8FC; //d0ffff;
65 | }
66 |
67 | .rounded-window {
68 | border-radius: 10px;
69 | border-style: solid;
70 | border-width: 1px;
71 | }
72 |
73 | .rounded-window-top {
74 | border-top-right-radius: 10px 10px;
75 | border-top-left-radius: 10px 10px;
76 | border-style: solid;
77 | border-width: 1px;
78 | overflow: auto;
79 | }
80 |
81 | .light-rounded-window-top {
82 | border-top-right-radius: 10px 10px;
83 | border-top-left-radius: 10px 10px;
84 | }
85 |
86 | .rounded-window-bottom {
87 | border-style: solid;
88 | border-width: 0px 1px 1px 1px;
89 | border-bottom-right-radius: 10px 10px;
90 | border-bottom-left-radius: 10px 10px;
91 | overflow: auto;
92 | }
93 |
94 | .method-name {
95 | font-size: 12px;
96 | font-family: monospace;
97 | }
98 |
99 | .method-content {
100 | border-style: solid;
101 | border-width: 0px 0px 1px 0px;
102 | margin-bottom: 10;
103 | padding-bottom: 5px;
104 | width: 80%;
105 | }
106 |
107 | .parameters {
108 | font-size: 14px;
109 | font-family: monospace;
110 | }
111 |
112 | .stack-trace {
113 | white-space: pre;
114 | font-family: monospace;
115 | font-size: 12px;
116 | font-weight: bold;
117 | margin-top: 0px;
118 | margin-left: 20px;
119 | }
120 |
121 | .testng-xml {
122 | font-family: monospace;
123 | }
124 |
125 | .method-list-content {
126 | margin-left: 10px;
127 | }
128 |
129 | .navigator-suite-content {
130 | margin-left: 10px;
131 | font: 12px 'Lucida Grande';
132 | }
133 |
134 | .suite-section-title {
135 | margin-top: 10px;
136 | width: 80%;
137 | border-style: solid;
138 | border-width: 1px 0px 0px 0px;
139 | font-family: Times;
140 | font-size: 18px;
141 | font-weight: bold;
142 | }
143 |
144 | .suite-section-content {
145 | list-style-image: url(bullet_point.png);
146 | }
147 |
148 | .top-banner-root {
149 | position: absolute;
150 | top: 0;
151 | height: 45px;
152 | left: 0;
153 | right: 0;
154 | padding: 5px;
155 | margin: 0px 0px 5px 0px;
156 | background-color: #0066ff;
157 | font-family: Times;
158 | color: #fff;
159 | text-align: center;
160 | }
161 |
162 | .top-banner-title-font {
163 | font-size: 25px;
164 | }
165 |
166 | .test-name {
167 | font-family: 'Lucida Grande';
168 | font-size: 16px;
169 | }
170 |
171 | .suite-icon {
172 | padding: 5px;
173 | float: right;
174 | height: 20;
175 | }
176 |
177 | .test-group {
178 | font: 20px 'Lucida Grande';
179 | margin: 5px 5px 10px 5px;
180 | border-width: 0px 0px 1px 0px;
181 | border-style: solid;
182 | padding: 5px;
183 | }
184 |
185 | .test-group-name {
186 | font-weight: bold;
187 | }
188 |
189 | .method-in-group {
190 | font-size: 16px;
191 | margin-left: 80px;
192 | }
193 |
194 | table.google-visualization-table-table {
195 | width: 100%;
196 | }
197 |
198 | .reporter-method-name {
199 | font-size: 14px;
200 | font-family: monospace;
201 | }
202 |
203 | .reporter-method-output-div {
204 | padding: 5px;
205 | margin: 0px 0px 5px 20px;
206 | font-size: 12px;
207 | font-family: monospace;
208 | border-width: 0px 0px 0px 1px;
209 | border-style: solid;
210 | }
211 |
212 | .ignored-class-div {
213 | font-size: 14px;
214 | font-family: monospace;
215 | }
216 |
217 | .ignored-methods-div {
218 | padding: 5px;
219 | margin: 0px 0px 5px 20px;
220 | font-size: 12px;
221 | font-family: monospace;
222 | border-width: 0px 0px 0px 1px;
223 | border-style: solid;
224 | }
225 |
226 | .border-failed {
227 | border-top-left-radius: 10px 10px;
228 | border-bottom-left-radius: 10px 10px;
229 | border-style: solid;
230 | border-width: 0px 0px 0px 10px;
231 | border-color: #f00;
232 | }
233 |
234 | .border-skipped {
235 | border-top-left-radius: 10px 10px;
236 | border-bottom-left-radius: 10px 10px;
237 | border-style: solid;
238 | border-width: 0px 0px 0px 10px;
239 | border-color: #edc600;
240 | }
241 |
242 | .border-passed {
243 | border-top-left-radius: 10px 10px;
244 | border-bottom-left-radius: 10px 10px;
245 | border-style: solid;
246 | border-width: 0px 0px 0px 10px;
247 | border-color: #19f52d;
248 | }
249 |
250 | .times-div {
251 | text-align: center;
252 | padding: 5px;
253 | }
254 |
255 | .suite-total-time {
256 | font: 16px 'Lucida Grande';
257 | }
258 |
259 | .configuration-suite {
260 | margin-left: 20px;
261 | }
262 |
263 | .configuration-test {
264 | margin-left: 40px;
265 | }
266 |
267 | .configuration-class {
268 | margin-left: 60px;
269 | }
270 |
271 | .configuration-method {
272 | margin-left: 80px;
273 | }
274 |
275 | .test-method {
276 | margin-left: 100px;
277 | }
278 |
279 | .chronological-class {
280 | background-color: #0ccff;
281 | border-style: solid;
282 | border-width: 0px 0px 1px 1px;
283 | }
284 |
285 | .method-start {
286 | float: right;
287 | }
288 |
289 | .chronological-class-name {
290 | padding: 0px 0px 0px 5px;
291 | color: #008;
292 | }
293 |
294 | .after, .before, .test-method {
295 | font-family: monospace;
296 | font-size: 14px;
297 | }
298 |
299 | .navigator-suite-header {
300 | font-size: 22px;
301 | margin: 0px 10px 5px 0px;
302 | background-color: #deb887;
303 | text-align: center;
304 | }
305 |
306 | .collapse-all-icon {
307 | padding: 5px;
308 | float: right;
309 | }
310 |
--------------------------------------------------------------------------------
/target/surefire-reports/testng-reports.js:
--------------------------------------------------------------------------------
1 | $(document).ready(function() {
2 | $('a.navigator-link').click(function() {
3 | // Extract the panel for this link
4 | var panel = getPanelName($(this));
5 |
6 | // Mark this link as currently selected
7 | $('.navigator-link').parent().removeClass('navigator-selected');
8 | $(this).parent().addClass('navigator-selected');
9 |
10 | showPanel(panel);
11 | });
12 |
13 | installMethodHandlers('failed');
14 | installMethodHandlers('skipped');
15 | installMethodHandlers('passed', true); // hide passed methods by default
16 |
17 | $('a.method').click(function() {
18 | showMethod($(this));
19 | return false;
20 | });
21 |
22 | // Hide all the panels and display the first one (do this last
23 | // to make sure the click() will invoke the listeners)
24 | $('.panel').hide();
25 | $('.navigator-link').first().click();
26 |
27 | // Collapse/expand the suites
28 | $('a.collapse-all-link').click(function() {
29 | var contents = $('.navigator-suite-content');
30 | if (contents.css('display') == 'none') {
31 | contents.show();
32 | } else {
33 | contents.hide();
34 | }
35 | });
36 | });
37 |
38 | // The handlers that take care of showing/hiding the methods
39 | function installMethodHandlers(name, hide) {
40 | function getContent(t) {
41 | return $('.method-list-content.' + name + "." + t.attr('panel-name'));
42 | }
43 |
44 | function getHideLink(t, name) {
45 | var s = 'a.hide-methods.' + name + "." + t.attr('panel-name');
46 | return $(s);
47 | }
48 |
49 | function getShowLink(t, name) {
50 | return $('a.show-methods.' + name + "." + t.attr('panel-name'));
51 | }
52 |
53 | function getMethodPanelClassSel(element, name) {
54 | var panelName = getPanelName(element);
55 | var sel = '.' + panelName + "-class-" + name;
56 | return $(sel);
57 | }
58 |
59 | $('a.hide-methods.' + name).click(function() {
60 | var w = getContent($(this));
61 | w.hide();
62 | getHideLink($(this), name).hide();
63 | getShowLink($(this), name).show();
64 | getMethodPanelClassSel($(this), name).hide();
65 | });
66 |
67 | $('a.show-methods.' + name).click(function() {
68 | var w = getContent($(this));
69 | w.show();
70 | getHideLink($(this), name).show();
71 | getShowLink($(this), name).hide();
72 | showPanel(getPanelName($(this)));
73 | getMethodPanelClassSel($(this), name).show();
74 | });
75 |
76 | if (hide) {
77 | $('a.hide-methods.' + name).click();
78 | } else {
79 | $('a.show-methods.' + name).click();
80 | }
81 | }
82 |
83 | function getHashForMethod(element) {
84 | return element.attr('hash-for-method');
85 | }
86 |
87 | function getPanelName(element) {
88 | return element.attr('panel-name');
89 | }
90 |
91 | function showPanel(panelName) {
92 | $('.panel').hide();
93 | var panel = $('.panel[panel-name="' + panelName + '"]');
94 | panel.show();
95 | }
96 |
97 | function showMethod(element) {
98 | var hashTag = getHashForMethod(element);
99 | var panelName = getPanelName(element);
100 | showPanel(panelName);
101 | var current = document.location.href;
102 | var base = current.substring(0, current.indexOf('#'))
103 | document.location.href = base + '#' + hashTag;
104 | var newPosition = $(document).scrollTop() - 65;
105 | $(document).scrollTop(newPosition);
106 | }
107 |
108 | function drawTable() {
109 | for (var i = 0; i < suiteTableInitFunctions.length; i++) {
110 | window[suiteTableInitFunctions[i]]();
111 | }
112 |
113 | for (var k in window.suiteTableData) {
114 | var v = window.suiteTableData[k];
115 | var div = v.tableDiv;
116 | var data = v.tableData
117 | var table = new google.visualization.Table(document.getElementById(div));
118 | table.draw(data, {
119 | showRowNumber : false
120 | });
121 | }
122 | }
123 |
--------------------------------------------------------------------------------
/target/surefire-reports/testng-results.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/target/surefire-reports/testng.css:
--------------------------------------------------------------------------------
1 | .invocation-failed, .test-failed { background-color: #DD0000; }
2 | .invocation-percent, .test-percent { background-color: #006600; }
3 | .invocation-passed, .test-passed { background-color: #00AA00; }
4 | .invocation-skipped, .test-skipped { background-color: #CCCC00; }
5 |
6 | .main-page {
7 | font-size: x-large;
8 | }
9 |
10 |
--------------------------------------------------------------------------------
/target/test-classes/chromedriver.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/amuthansakthivel/ParallelExecutionWithDocker/cdc940702861dfcaf78fa61f45dec86b43e8119c/target/test-classes/chromedriver.exe
--------------------------------------------------------------------------------
/target/test-classes/config.properties:
--------------------------------------------------------------------------------
1 |
2 | #Execution Configuration
3 | ExecutionMode=Remote
4 |
5 | #Remote Mode
6 | RemoteMode=Zalenium
7 |
8 | RemoteURL=http://localhost:4444/wd/hub
9 |
10 | #implicit Wait in seconds
11 | WaitTime=10
12 |
13 | #if yes existing results will be overridden. If no results will be dynamic with time stamp
14 | OverrideResults=yes
15 |
16 | #If screenshots are required use yes
17 | ScreenshotsRequired=yes
18 |
19 | #Test URL
20 | url=http://automationpractice.com/index.php
21 |
22 | TestDataLocation=.//src/test/resources/testdata.xlsx
23 | ExtentConfigLocation=.//src/test/resources/extentreport.xml
24 |
25 |
26 | #if result path is null home directory will be picked
27 | #Sample path is C:\\Users\\users\\Desktop
28 | ResultPath=
29 |
30 | #if screenshot path is null home directory will be picked
31 | #Sample path is C:\\Users\\users\\Desktop
32 | ScreenshotPath=
33 |
34 | #Needed screenshots for passed steps in reports then use yes
35 | PassedStepsScreenshots=yes
36 |
37 | #Needed screenshots for passed steps in reports then use yes
38 | FailedStepsScreenshots=yes
39 |
40 | #Needed screenshots for skipped steps in reports then use yes
41 | SkippedStepsScreenshots=no
42 |
43 | #Need to Send Mail to respective stakeholders with the extent report
44 | #Separate multiple emails by commas
45 | #Logic is written in sec,main,java.com.utils.testutils class
46 | SendExecutionResultsInEmail=No
47 | FromEmail=mech.amuthansakthivel@gmail.com
48 | EmailPassword=ambattur
49 | ToEmails=amuthanvec@gmail.com,mech.amuthansakthivel@gmail.com
50 | CCEmails=
51 | BCCEmails=
52 |
53 | ExecutablesPath=.//src/test//resources//chromedriver.exe
--------------------------------------------------------------------------------
/target/test-classes/extentreport.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | standard
7 |
8 |
9 |
10 | UTF-8
11 |
12 |
13 |
14 | http
15 |
16 |
17 | DATA DRIVEN TESTS
18 |
19 |
20 | PROJECT AUTOMATION DEMO
21 |
22 |
23 | Automation Report
24 |
25 |
26 |
27 | yyyy-MM-dd
28 |
29 |
30 |
31 | HH:mm:ss
32 |
33 |
34 |
35 |
40 |
41 |
42 |
43 |
44 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/target/test-classes/geckodriver.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/amuthansakthivel/ParallelExecutionWithDocker/cdc940702861dfcaf78fa61f45dec86b43e8119c/target/test-classes/geckodriver.exe
--------------------------------------------------------------------------------
/target/test-classes/testdata.xlsx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/amuthansakthivel/ParallelExecutionWithDocker/cdc940702861dfcaf78fa61f45dec86b43e8119c/target/test-classes/testdata.xlsx
--------------------------------------------------------------------------------
/test-output/Default suite/Default test.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | TestNG: Default test
4 |
5 |
6 |
7 |
11 |
53 |
54 |
55 |
56 | Default test
57 |
58 | Tests passed/Failed/Skipped: 0/0/1
59 |
60 | Started on: Thu Oct 03 11:02:50 IST 2019
61 |
62 | Total time: 0 seconds (24 ms)
63 |
64 | Included groups:
65 |
66 | Excluded groups:
67 |
68 |
69 | (Hover the method name to see the test class name)
70 |
71 | SKIPPED TESTS
72 | Test method
73 | Exception
74 | Time (seconds)
75 | Instance
76 |
77 |
78 | validateHomePageTitle Test class: com.testcases.HomePageTests
79 | java.lang.RuntimeException: java.lang.NullPointerException
80 | at org.testng.internal.MethodInvocationHelper.invokeMethodNoCheckedException(MethodInvocationHelper.java:49)
81 | at org.testng.internal.MethodInvocationHelper.invokeDataProvider(MethodInvocationHelper.java:131)
82 | at org.testng.internal.Parameters.handleParameters(Parameters.java:706)
83 | at org.testng.internal.ParameterHandler.handleParameters(ParameterHandler.java:49)
84 | at org.testng.internal.ParameterHandler.createParameters(ParameterHandler.java:37)
85 | at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:924)
86 | at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125)
87 | at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:109)
88 | at org.testng.TestRunner.privateRun(TestRunner.java:648)
89 | at org.testng.TestRunner.run(TestRunner.java:505)
90 | at org.testng.SuiteRunner.runTest(SuiteRunner.java:455)
91 | at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:450)
92 | at org.testng.SuiteRunner.privateRun(SuiteRunner.java:415)
93 | at org.testng.SuiteRunner.run(SuiteRunner.java:364)
94 | at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
95 | at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:84)
96 | at org.testng.TestNG.runSuitesSequentially(TestNG.java:1208)
97 | at org.testng.TestNG.runSuitesLocally(TestNG.java:1137)
98 | at org.testng.TestNG.runSuites(TestNG.java:1049)
99 | at org.testng.TestNG.run(TestNG.java:1017)
100 | at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:114)
101 | at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
102 | at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
103 | Caused by: java.lang.NullPointerException
104 | at com.utilities.ExcelUtilities.getLastColumnNum(ExcelUtilities.java:94)
105 | at com.utilities.ExcelUtilities.getDataForDataprovider(ExcelUtilities.java:153)
106 | at com.utilities.ExcelUtilities.supplyDataForIterations(ExcelUtilities.java:144)
107 | at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
108 | at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
109 | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
110 | at java.lang.reflect.Method.invoke(Method.java:498)
111 | at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:124)
112 | at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:74)
113 | at org.testng.internal.MethodInvocationHelper.invokeMethodNoCheckedException(MethodInvocationHelper.java:45)
114 | ... 22 more
115 | Click to show all stack frames
116 | java.lang.RuntimeException: java.lang.NullPointerException
117 | at org.testng.internal.MethodInvocationHelper.invokeMethodNoCheckedException(MethodInvocationHelper.java:49)
118 | at org.testng.internal.MethodInvocationHelper.invokeDataProvider(MethodInvocationHelper.java:131)
119 | at org.testng.internal.Parameters.handleParameters(Parameters.java:706)
120 | at org.testng.internal.ParameterHandler.handleParameters(ParameterHandler.java:49)
121 | at org.testng.internal.ParameterHandler.createParameters(ParameterHandler.java:37)
122 | at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:924)
123 | at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125)
124 | at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:109)
125 | at org.testng.TestRunner.privateRun(TestRunner.java:648)
126 | at org.testng.TestRunner.run(TestRunner.java:505)
127 | at org.testng.SuiteRunner.runTest(SuiteRunner.java:455)
128 | at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:450)
129 | at org.testng.SuiteRunner.privateRun(SuiteRunner.java:415)
130 | at org.testng.SuiteRunner.run(SuiteRunner.java:364)
131 | at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
132 | at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:84)
133 | at org.testng.TestNG.runSuitesSequentially(TestNG.java:1208)
134 | at org.testng.TestNG.runSuitesLocally(TestNG.java:1137)
135 | at org.testng.TestNG.runSuites(TestNG.java:1049)
136 | at org.testng.TestNG.run(TestNG.java:1017)
137 | at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:114)
138 | at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
139 | at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
140 | Caused by: java.lang.NullPointerException
141 | at com.utilities.ExcelUtilities.getLastColumnNum(ExcelUtilities.java:94)
142 | at com.utilities.ExcelUtilities.getDataForDataprovider(ExcelUtilities.java:153)
143 | at com.utilities.ExcelUtilities.supplyDataForIterations(ExcelUtilities.java:144)
144 | at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
145 | at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
146 | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
147 | at java.lang.reflect.Method.invoke(Method.java:498)
148 | at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:124)
149 | at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:74)
150 | at org.testng.internal.MethodInvocationHelper.invokeMethodNoCheckedException(MethodInvocationHelper.java:45)
151 | ... 22 more
152 |
153 | 0
154 | com.testcases.HomePageTests@670b40af
155 |
156 |
157 |
--------------------------------------------------------------------------------
/test-output/Default suite/Default test.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/test-output/Default suite/testng-failed.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/test-output/Suite/Test.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
11 |
32 |
33 |
34 |
35 |
36 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
--------------------------------------------------------------------------------
/test-output/Suite/testng-failed.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/test-output/collapseall.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/amuthansakthivel/ParallelExecutionWithDocker/cdc940702861dfcaf78fa61f45dec86b43e8119c/test-output/collapseall.gif
--------------------------------------------------------------------------------
/test-output/emailable-report.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | TestNG Report
6 |
7 |
8 |
9 |
10 | Test # Passed # Skipped # Failed Time (ms) Included Groups Excluded Groups
11 | Suite
12 | Test 0 0 2 42,330
13 |
14 |
16 | Test com.testcases.HomePageTests#validateSearchInHomePage Parameter #1 {searchvalue=Blouse, password=, email=, browser=chrome, errormessage=, TestCaseName=validateSearchInHomePage} Exception org.openqa.selenium.TimeoutException: Expected condition failed: waiting for visibility of Proxy element for: DefaultElementLocator 'By.xpath: //input[@id='search_query_top']' (tried for 10 second(s) with 500 milliseconds interval)
17 | at org.openqa.selenium.support.ui.WebDriverWait.timeoutException(WebDriverWait.java:95)
18 | at org.openqa.selenium.support.ui.FluentWait.until(FluentWait.java:272)
19 | at com.utilities.TestUtils.explicitlyWait(TestUtils.java:47)
20 | at com.utilities.TestUtils.sendKeys(TestUtils.java:40)
21 | at com.pages.HomePage.enterValueToSearch(HomePage.java:33)
22 | at com.testcases.HomePageTests.validateSearchInHomePage(HomePageTests.java:37)
23 | at java.util.concurrent.FutureTask.run(FutureTask.java:266)
24 | at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
25 | at java.util.concurrent.FutureTask.run(FutureTask.java:266)
26 | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
27 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
28 | at java.lang.Thread.run(Thread.java:748)
29 | Caused by: org.openqa.selenium.NoSuchElementException: no such element: Unable to locate element: {"method":"xpath","selector":"//input[@id='search_query_top']"}
30 | (Session info: chrome=77.0.3865.90)
31 | For documentation on this error, please visit: https://www.seleniumhq.org/exceptions/no_such_element.html
32 | Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
33 | System info: host: 'INMAAWN53000190', ip: '10.0.75.1', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_221'
34 | Driver info: org.openqa.selenium.remote.RemoteWebDriver
35 | Capabilities {acceptInsecureCerts: false, browserName: chrome, browserVersion: 77.0.3865.90, chrome: {chromedriverVersion: 77.0.3865.40 (f484704e052e0..., userDataDir: /tmp/.com.google.Chrome.sjPaVp}, goog:chromeOptions: {debuggerAddress: localhost:39613}, javascriptEnabled: true, networkConnectionEnabled: false, pageLoadStrategy: normal, platform: LINUX, platformName: LINUX, proxy: Proxy(), setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: dismiss and notify, webdriver.remote.sessionid: bc8ec3ebdce47ec2d4e38563ef0...}
36 | Session ID: bc8ec3ebdce47ec2d4e38563ef0dee89
37 | *** Element info: {Using=xpath, value=//input[@id='search_query_top']}
38 | at org.openqa.selenium.remote.http.W3CHttpResponseCodec.createException(W3CHttpResponseCodec.java:187)
39 | at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:122)
40 | at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:49)
41 | at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158)
42 | at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552)
43 | at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:323)
44 | at org.openqa.selenium.remote.RemoteWebDriver.findElementByXPath(RemoteWebDriver.java:428)
45 | at org.openqa.selenium.By$ByXPath.findElement(By.java:353)
46 | at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:315)
47 | at org.openqa.selenium.support.pagefactory.DefaultElementLocator.findElement(DefaultElementLocator.java:69)
48 | at org.openqa.selenium.support.pagefactory.internal.LocatingElementHandler.invoke(LocatingElementHandler.java:38)
49 | at com.sun.proxy.$Proxy12.isDisplayed(Unknown Source)
50 | at org.openqa.selenium.support.ui.ExpectedConditions.elementIfVisible(ExpectedConditions.java:314)
51 | at org.openqa.selenium.support.ui.ExpectedConditions.access$000(ExpectedConditions.java:43)
52 | at org.openqa.selenium.support.ui.ExpectedConditions$10.apply(ExpectedConditions.java:300)
53 | at org.openqa.selenium.support.ui.ExpectedConditions$10.apply(ExpectedConditions.java:297)
54 | at org.openqa.selenium.support.ui.FluentWait.until(FluentWait.java:249)
55 | ... 19 more
56 | ... Removed 13 stack frames
back to summary
57 | com.testcases.HomePageTests#validateSearchInHomePage Parameter #1 {searchvalue=Printed Dress, password=, email=, browser=firefox, errormessage=, TestCaseName=validateSearchInHomePage} Exception org.openqa.selenium.WebDriverException: Reached error page: about:neterror?e=connectionFailure&u=http%3A//automationpractice.com/index.php&c=UTF-8&f=regular&d=Firefox%20can%E2%80%99t%20establish%20a%20connection%20to%20the%20server%20at%20automationpractice.com.
58 | Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
59 | System info: host: 'INMAAWN53000190', ip: '10.0.75.1', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_221'
60 | Driver info: org.openqa.selenium.remote.RemoteWebDriver
61 | Capabilities {acceptInsecureCerts: true, browserName: firefox, browserVersion: 69.0, javascriptEnabled: true, moz:accessibilityChecks: false, moz:buildID: 20190827005903, moz:geckodriverVersion: 0.25.0, moz:headless: false, moz:processID: 405, moz:profile: /tmp/rust_mozprofileX5c7Rs, moz:shutdownTimeout: 60000, moz:useNonSpecCompliantPointerOrigin: false, moz:webdriverClick: true, pageLoadStrategy: normal, platform: LINUX, platformName: LINUX, platformVersion: 4.9.184-linuxkit, rotatable: false, setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: dismiss and notify, webdriver.remote.sessionid: bd33bf0d-9420-44fb-bcf4-0d3...}
62 | Session ID: bd33bf0d-9420-44fb-bcf4-0d3069ad1572
63 | at org.openqa.selenium.remote.http.W3CHttpResponseCodec.createException(W3CHttpResponseCodec.java:187)
64 | at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:122)
65 | at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:49)
66 | at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158)
67 | at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552)
68 | at org.openqa.selenium.remote.RemoteWebDriver.get(RemoteWebDriver.java:277)
69 | at com.testcases.BaseTest.navigateToURL(BaseTest.java:194)
70 | at com.testcases.HomePageTests.validateSearchInHomePage(HomePageTests.java:35)
71 | at java.util.concurrent.FutureTask.run(FutureTask.java:266)
72 | at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
73 | at java.util.concurrent.FutureTask.run(FutureTask.java:266)
74 | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
75 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
76 | at java.lang.Thread.run(Thread.java:748)
77 | ... Removed 13 stack frames
back to summary
78 |
79 |
80 |
--------------------------------------------------------------------------------
/test-output/junitreports/TEST-com.testcases.HomePageTests.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
60 |
61 |
62 |
63 |
69 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
--------------------------------------------------------------------------------
/test-output/junitreports/TEST-com.testcases.SignInPageTests.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/test-output/old/Default suite/Default test.properties:
--------------------------------------------------------------------------------
1 | [SuiteResult context=Default test]
--------------------------------------------------------------------------------
/test-output/old/Default suite/classes.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Class name
4 | Method name
5 | Groups
6 |
7 | com.testcases.HomePageTests
8 |
9 |
10 | @Test
11 |
12 |
13 |
14 | validateHomePageTitle
15 |
16 |
17 | @BeforeClass
18 |
19 |
20 | @BeforeMethod
21 |
22 |
23 |
24 | setUp
25 |
26 |
27 | @AfterMethod
28 |
29 |
30 |
31 | tearDown
32 |
33 |
34 | @AfterClass
35 |
36 |
37 |
--------------------------------------------------------------------------------
/test-output/old/Default suite/groups.html:
--------------------------------------------------------------------------------
1 | Groups used for this test run
--------------------------------------------------------------------------------
/test-output/old/Default suite/index.html:
--------------------------------------------------------------------------------
1 | Results for Default suite
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/test-output/old/Default suite/main.html:
--------------------------------------------------------------------------------
1 | Results for Default suite
2 | Select a result on the left-hand pane.
3 |
--------------------------------------------------------------------------------
/test-output/old/Default suite/methods-alphabetical.html:
--------------------------------------------------------------------------------
1 | Methods run, sorted chronologically >> means before, << means after
Default suite
(Hover the method name to see the test class name)
2 |
3 |
--------------------------------------------------------------------------------
/test-output/old/Default suite/methods-not-run.html:
--------------------------------------------------------------------------------
1 | Methods that were not run
--------------------------------------------------------------------------------
/test-output/old/Default suite/methods.html:
--------------------------------------------------------------------------------
1 | Methods run, sorted chronologically >> means before, << means after
Default suite
(Hover the method name to see the test class name)
2 |
3 |
--------------------------------------------------------------------------------
/test-output/old/Default suite/reporter-output.html:
--------------------------------------------------------------------------------
1 | Reporter output
--------------------------------------------------------------------------------
/test-output/old/Default suite/testng.xml.html:
--------------------------------------------------------------------------------
1 | testng.xml for Default suite <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite guice-stage="DEVELOPMENT" name="Default suite">
<test thread-count="5" verbose="2" name="Default test">
<classes>
<class name="com.testcases.HomePageTests"/>
</classes>
</test> <!-- Default test -->
</suite> <!-- Default suite -->
--------------------------------------------------------------------------------
/test-output/old/Default suite/toc.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Results for Default suite
4 |
5 |
6 |
7 |
8 | Results forDefault suite
9 |
23 |
24 |
25 | Default test (0/0/1)
26 | Results
27 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/test-output/old/Suite/Test.properties:
--------------------------------------------------------------------------------
1 | [SuiteResult context=Test]
--------------------------------------------------------------------------------
/test-output/old/Suite/classes.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Class name
4 | Method name
5 | Groups
6 |
7 | com.testcases.HomePageTests
8 |
9 |
10 | @Test
11 |
12 |
13 |
14 | validateErrorMessageOnLogin
15 |
16 |
17 |
18 | validateSearchInHomePage
19 |
20 |
21 | @BeforeClass
22 |
23 |
24 |
25 | setUpExtentReports
26 |
27 |
28 | @BeforeMethod
29 |
30 |
31 | @AfterMethod
32 |
33 |
34 |
35 | quitBrowser
36 |
37 |
38 | @AfterClass
39 |
40 |
41 |
--------------------------------------------------------------------------------
/test-output/old/Suite/groups.html:
--------------------------------------------------------------------------------
1 | Groups used for this test run
--------------------------------------------------------------------------------
/test-output/old/Suite/index.html:
--------------------------------------------------------------------------------
1 | Results for Suite
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/test-output/old/Suite/main.html:
--------------------------------------------------------------------------------
1 | Results for Suite
2 | Select a result on the left-hand pane.
3 |
--------------------------------------------------------------------------------
/test-output/old/Suite/methods-alphabetical.html:
--------------------------------------------------------------------------------
1 | Methods run, sorted chronologically >> means before, << means after
Suite
(Hover the method name to see the test class name)
2 |
3 | Time Delta (ms) Suite configuration Test configuration Class configuration Groups configuration Method configuration Test method Thread Instances
4 | 19/10/29 11:04:55 0 <<afterSuite
5 | main@310623126
6 | 19/10/29 11:04:38 -16348 <<quitBrowser
7 | TestNG-PoolService-0@504519439
8 | 19/10/29 11:04:54 -308 <<quitBrowser
9 | TestNG-PoolService-0@504519439
10 | 19/10/29 11:03:52 -62581 >>setUp
11 | main@310623126
12 | 19/10/29 11:04:12 -42552 >>setUpExtentReports
13 | TestNG-test=Test-1@2023927109
14 | 19/10/29 11:04:54 -202 <<tearDown
15 | main@310623126
16 | 19/10/29 11:04:12 -42426 validateSearchInHomePage
17 | TestNG-PoolService-1@1984275195
18 | 19/10/29 11:04:12 -42426 validateSearchInHomePage
19 | TestNG-PoolService-1@1984275195
20 |
21 |
--------------------------------------------------------------------------------
/test-output/old/Suite/methods-not-run.html:
--------------------------------------------------------------------------------
1 | Methods that were not run
2 | com.testcases.HomePageTests.validateErrorMessageOnLogin Validate the error message for incorrect login
3 | com.testcases.SignInPageTests.validateErrorMessageOnLoginSignInPage Validate the error message for incorrect login from SigninPageTests
4 | com.testcases.BaseTest.setUp
5 | com.testcases.BaseTest.setUp
6 | com.testcases.BaseTest.afterSuite
7 | com.testcases.BaseTest.afterSuite
8 |
--------------------------------------------------------------------------------
/test-output/old/Suite/methods.html:
--------------------------------------------------------------------------------
1 | Methods run, sorted chronologically >> means before, << means after
Suite
(Hover the method name to see the test class name)
2 |
3 | Time Delta (ms) Suite configuration Test configuration Class configuration Groups configuration Method configuration Test method Thread Instances
4 | 19/10/29 11:03:52 0 >>setUp
5 | main@310623126
6 | 19/10/29 11:04:12 20029 >>setUpExtentReports
7 | TestNG-test=Test-1@2023927109
8 | 19/10/29 11:04:12 20155 validateSearchInHomePage
9 | TestNG-PoolService-1@1984275195
10 | 19/10/29 11:04:12 20155 validateSearchInHomePage
11 | TestNG-PoolService-1@1984275195
12 | 19/10/29 11:04:38 46233 <<quitBrowser
13 | TestNG-PoolService-0@504519439
14 | 19/10/29 11:04:54 62273 <<quitBrowser
15 | TestNG-PoolService-0@504519439
16 | 19/10/29 11:04:54 62379 <<tearDown
17 | main@310623126
18 | 19/10/29 11:04:55 62581 <<afterSuite
19 | main@310623126
20 |
21 |
--------------------------------------------------------------------------------
/test-output/old/Suite/reporter-output.html:
--------------------------------------------------------------------------------
1 | Reporter output
--------------------------------------------------------------------------------
/test-output/old/Suite/testng.xml.html:
--------------------------------------------------------------------------------
1 | testng.xml for Suite <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite thread-count="3" guice-stage="DEVELOPMENT" name="Suite" parallel="methods">
<listeners>
<listener class-name="com.listener.ListenerClass"/>
<listener class-name="com.listener.AnnotationTransformer"/>
</listeners>
<test thread-count="3" name="Test" parallel="methods">
<classes>
<class name="com.testcases.HomePageTests"/>
<class name="com.testcases.SignInPageTests"/>
<class name="com.testcases.BaseTest"/>
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
--------------------------------------------------------------------------------
/test-output/old/Suite/toc.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Results for Suite
4 |
5 |
6 |
7 |
8 | Results forSuite
9 |
23 |
30 |
--------------------------------------------------------------------------------
/test-output/old/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Test results
6 | Suite Passed Failed Skipped testng.xml
7 | Total 0 2 0
8 | Suite
9 | 0 2 0 Link
10 |
--------------------------------------------------------------------------------
/test-output/testng-failed.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/test-output/testng-reports.css:
--------------------------------------------------------------------------------
1 | body {
2 | margin: 0px 0px 5px 5px;
3 | }
4 |
5 | ul {
6 | margin: 0px;
7 | }
8 |
9 | li {
10 | list-style-type: none;
11 | }
12 |
13 | a {
14 | text-decoration: none;
15 | }
16 |
17 | a:hover {
18 | text-decoration: underline;
19 | }
20 |
21 | .navigator-selected {
22 | background: #ffa500;
23 | }
24 |
25 | .wrapper {
26 | position: absolute;
27 | top: 60px;
28 | bottom: 0;
29 | left: 400px;
30 | right: 0;
31 | overflow: auto;
32 | }
33 |
34 | .navigator-root {
35 | position: absolute;
36 | top: 60px;
37 | bottom: 0;
38 | left: 0;
39 | width: 400px;
40 | overflow-y: auto;
41 | }
42 |
43 | .suite {
44 | margin: 0px 10px 10px 0px;
45 | background-color: #fff8dc;
46 | }
47 |
48 | .suite-name {
49 | padding-left: 10px;
50 | font-size: 25px;
51 | font-family: Times;
52 | }
53 |
54 | .main-panel-header {
55 | padding: 5px;
56 | background-color: #9FB4D9; //afeeee;
57 | font-family: monospace;
58 | font-size: 18px;
59 | }
60 |
61 | .main-panel-content {
62 | padding: 5px;
63 | margin-bottom: 10px;
64 | background-color: #DEE8FC; //d0ffff;
65 | }
66 |
67 | .rounded-window {
68 | border-radius: 10px;
69 | border-style: solid;
70 | border-width: 1px;
71 | }
72 |
73 | .rounded-window-top {
74 | border-top-right-radius: 10px 10px;
75 | border-top-left-radius: 10px 10px;
76 | border-style: solid;
77 | border-width: 1px;
78 | overflow: auto;
79 | }
80 |
81 | .light-rounded-window-top {
82 | border-top-right-radius: 10px 10px;
83 | border-top-left-radius: 10px 10px;
84 | }
85 |
86 | .rounded-window-bottom {
87 | border-style: solid;
88 | border-width: 0px 1px 1px 1px;
89 | border-bottom-right-radius: 10px 10px;
90 | border-bottom-left-radius: 10px 10px;
91 | overflow: auto;
92 | }
93 |
94 | .method-name {
95 | font-size: 12px;
96 | font-family: monospace;
97 | }
98 |
99 | .method-content {
100 | border-style: solid;
101 | border-width: 0px 0px 1px 0px;
102 | margin-bottom: 10;
103 | padding-bottom: 5px;
104 | width: 80%;
105 | }
106 |
107 | .parameters {
108 | font-size: 14px;
109 | font-family: monospace;
110 | }
111 |
112 | .stack-trace {
113 | white-space: pre;
114 | font-family: monospace;
115 | font-size: 12px;
116 | font-weight: bold;
117 | margin-top: 0px;
118 | margin-left: 20px;
119 | }
120 |
121 | .testng-xml {
122 | font-family: monospace;
123 | }
124 |
125 | .method-list-content {
126 | margin-left: 10px;
127 | }
128 |
129 | .navigator-suite-content {
130 | margin-left: 10px;
131 | font: 12px 'Lucida Grande';
132 | }
133 |
134 | .suite-section-title {
135 | margin-top: 10px;
136 | width: 80%;
137 | border-style: solid;
138 | border-width: 1px 0px 0px 0px;
139 | font-family: Times;
140 | font-size: 18px;
141 | font-weight: bold;
142 | }
143 |
144 | .suite-section-content {
145 | list-style-image: url(bullet_point.png);
146 | }
147 |
148 | .top-banner-root {
149 | position: absolute;
150 | top: 0;
151 | height: 45px;
152 | left: 0;
153 | right: 0;
154 | padding: 5px;
155 | margin: 0px 0px 5px 0px;
156 | background-color: #0066ff;
157 | font-family: Times;
158 | color: #fff;
159 | text-align: center;
160 | }
161 |
162 | .top-banner-title-font {
163 | font-size: 25px;
164 | }
165 |
166 | .test-name {
167 | font-family: 'Lucida Grande';
168 | font-size: 16px;
169 | }
170 |
171 | .suite-icon {
172 | padding: 5px;
173 | float: right;
174 | height: 20;
175 | }
176 |
177 | .test-group {
178 | font: 20px 'Lucida Grande';
179 | margin: 5px 5px 10px 5px;
180 | border-width: 0px 0px 1px 0px;
181 | border-style: solid;
182 | padding: 5px;
183 | }
184 |
185 | .test-group-name {
186 | font-weight: bold;
187 | }
188 |
189 | .method-in-group {
190 | font-size: 16px;
191 | margin-left: 80px;
192 | }
193 |
194 | table.google-visualization-table-table {
195 | width: 100%;
196 | }
197 |
198 | .reporter-method-name {
199 | font-size: 14px;
200 | font-family: monospace;
201 | }
202 |
203 | .reporter-method-output-div {
204 | padding: 5px;
205 | margin: 0px 0px 5px 20px;
206 | font-size: 12px;
207 | font-family: monospace;
208 | border-width: 0px 0px 0px 1px;
209 | border-style: solid;
210 | }
211 |
212 | .ignored-class-div {
213 | font-size: 14px;
214 | font-family: monospace;
215 | }
216 |
217 | .ignored-methods-div {
218 | padding: 5px;
219 | margin: 0px 0px 5px 20px;
220 | font-size: 12px;
221 | font-family: monospace;
222 | border-width: 0px 0px 0px 1px;
223 | border-style: solid;
224 | }
225 |
226 | .border-failed {
227 | border-top-left-radius: 10px 10px;
228 | border-bottom-left-radius: 10px 10px;
229 | border-style: solid;
230 | border-width: 0px 0px 0px 10px;
231 | border-color: #f00;
232 | }
233 |
234 | .border-skipped {
235 | border-top-left-radius: 10px 10px;
236 | border-bottom-left-radius: 10px 10px;
237 | border-style: solid;
238 | border-width: 0px 0px 0px 10px;
239 | border-color: #edc600;
240 | }
241 |
242 | .border-passed {
243 | border-top-left-radius: 10px 10px;
244 | border-bottom-left-radius: 10px 10px;
245 | border-style: solid;
246 | border-width: 0px 0px 0px 10px;
247 | border-color: #19f52d;
248 | }
249 |
250 | .times-div {
251 | text-align: center;
252 | padding: 5px;
253 | }
254 |
255 | .suite-total-time {
256 | font: 16px 'Lucida Grande';
257 | }
258 |
259 | .configuration-suite {
260 | margin-left: 20px;
261 | }
262 |
263 | .configuration-test {
264 | margin-left: 40px;
265 | }
266 |
267 | .configuration-class {
268 | margin-left: 60px;
269 | }
270 |
271 | .configuration-method {
272 | margin-left: 80px;
273 | }
274 |
275 | .test-method {
276 | margin-left: 100px;
277 | }
278 |
279 | .chronological-class {
280 | background-color: #0ccff;
281 | border-style: solid;
282 | border-width: 0px 0px 1px 1px;
283 | }
284 |
285 | .method-start {
286 | float: right;
287 | }
288 |
289 | .chronological-class-name {
290 | padding: 0px 0px 0px 5px;
291 | color: #008;
292 | }
293 |
294 | .after, .before, .test-method {
295 | font-family: monospace;
296 | font-size: 14px;
297 | }
298 |
299 | .navigator-suite-header {
300 | font-size: 22px;
301 | margin: 0px 10px 5px 0px;
302 | background-color: #deb887;
303 | text-align: center;
304 | }
305 |
306 | .collapse-all-icon {
307 | padding: 5px;
308 | float: right;
309 | }
310 |
--------------------------------------------------------------------------------
/test-output/testng-reports.js:
--------------------------------------------------------------------------------
1 | $(document).ready(function() {
2 | $('a.navigator-link').click(function() {
3 | // Extract the panel for this link
4 | var panel = getPanelName($(this));
5 |
6 | // Mark this link as currently selected
7 | $('.navigator-link').parent().removeClass('navigator-selected');
8 | $(this).parent().addClass('navigator-selected');
9 |
10 | showPanel(panel);
11 | });
12 |
13 | installMethodHandlers('failed');
14 | installMethodHandlers('skipped');
15 | installMethodHandlers('passed', true); // hide passed methods by default
16 |
17 | $('a.method').click(function() {
18 | showMethod($(this));
19 | return false;
20 | });
21 |
22 | // Hide all the panels and display the first one (do this last
23 | // to make sure the click() will invoke the listeners)
24 | $('.panel').hide();
25 | $('.navigator-link').first().click();
26 |
27 | // Collapse/expand the suites
28 | $('a.collapse-all-link').click(function() {
29 | var contents = $('.navigator-suite-content');
30 | if (contents.css('display') == 'none') {
31 | contents.show();
32 | } else {
33 | contents.hide();
34 | }
35 | });
36 | });
37 |
38 | // The handlers that take care of showing/hiding the methods
39 | function installMethodHandlers(name, hide) {
40 | function getContent(t) {
41 | return $('.method-list-content.' + name + "." + t.attr('panel-name'));
42 | }
43 |
44 | function getHideLink(t, name) {
45 | var s = 'a.hide-methods.' + name + "." + t.attr('panel-name');
46 | return $(s);
47 | }
48 |
49 | function getShowLink(t, name) {
50 | return $('a.show-methods.' + name + "." + t.attr('panel-name'));
51 | }
52 |
53 | function getMethodPanelClassSel(element, name) {
54 | var panelName = getPanelName(element);
55 | var sel = '.' + panelName + "-class-" + name;
56 | return $(sel);
57 | }
58 |
59 | $('a.hide-methods.' + name).click(function() {
60 | var w = getContent($(this));
61 | w.hide();
62 | getHideLink($(this), name).hide();
63 | getShowLink($(this), name).show();
64 | getMethodPanelClassSel($(this), name).hide();
65 | });
66 |
67 | $('a.show-methods.' + name).click(function() {
68 | var w = getContent($(this));
69 | w.show();
70 | getHideLink($(this), name).show();
71 | getShowLink($(this), name).hide();
72 | showPanel(getPanelName($(this)));
73 | getMethodPanelClassSel($(this), name).show();
74 | });
75 |
76 | if (hide) {
77 | $('a.hide-methods.' + name).click();
78 | } else {
79 | $('a.show-methods.' + name).click();
80 | }
81 | }
82 |
83 | function getHashForMethod(element) {
84 | return element.attr('hash-for-method');
85 | }
86 |
87 | function getPanelName(element) {
88 | return element.attr('panel-name');
89 | }
90 |
91 | function showPanel(panelName) {
92 | $('.panel').hide();
93 | var panel = $('.panel[panel-name="' + panelName + '"]');
94 | panel.show();
95 | }
96 |
97 | function showMethod(element) {
98 | var hashTag = getHashForMethod(element);
99 | var panelName = getPanelName(element);
100 | showPanel(panelName);
101 | var current = document.location.href;
102 | var base = current.substring(0, current.indexOf('#'))
103 | document.location.href = base + '#' + hashTag;
104 | var newPosition = $(document).scrollTop() - 65;
105 | $(document).scrollTop(newPosition);
106 | }
107 |
108 | function drawTable() {
109 | for (var i = 0; i < suiteTableInitFunctions.length; i++) {
110 | window[suiteTableInitFunctions[i]]();
111 | }
112 |
113 | for (var k in window.suiteTableData) {
114 | var v = window.suiteTableData[k];
115 | var div = v.tableDiv;
116 | var data = v.tableData
117 | var table = new google.visualization.Table(document.getElementById(div));
118 | table.draw(data, {
119 | showRowNumber : false
120 | });
121 | }
122 | }
123 |
--------------------------------------------------------------------------------
/test-output/testng-results.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
106 |
107 |
108 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
--------------------------------------------------------------------------------
/test-output/testng.css:
--------------------------------------------------------------------------------
1 | .invocation-failed, .test-failed { background-color: #DD0000; }
2 | .invocation-percent, .test-percent { background-color: #006600; }
3 | .invocation-passed, .test-passed { background-color: #00AA00; }
4 | .invocation-skipped, .test-skipped { background-color: #CCCC00; }
5 |
6 | .main-page {
7 | font-size: x-large;
8 | }
9 |
10 |
--------------------------------------------------------------------------------
/testng.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/zaleniumDown.bat:
--------------------------------------------------------------------------------
1 | docker stop zalenium
--------------------------------------------------------------------------------
/zaleniumUp.bat:
--------------------------------------------------------------------------------
1 | docker run --rm -ti --name zalenium -p 4444:4444 -v /var/run/docker.sock:/var/run/docker.sock --privileged dosel/zalenium start >>output.txt
--------------------------------------------------------------------------------