Skip to content

Commit 3d43d57

Browse files
kamal-kaur04francisf
authored andcommitted
minor fix
1 parent 991e5ce commit 3d43d57

File tree

2 files changed

+56
-44
lines changed

2 files changed

+56
-44
lines changed

playwright-java/src/test/java/com/browserstack/PlaywrightIPhoneTest.java

Lines changed: 28 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,16 @@
88
public class PlaywrightIPhoneTest {
99
public static void main(String[] args) {
1010
try (Playwright playwright = Playwright.create()) {
11-
JsonObject jsonObject = new JsonObject();
12-
jsonObject.addProperty("browser", "playwright-webkit"); // allowed browsers are `chrome`, `edge`, `playwright-chromium`, `playwright-firefox` and `playwright-webkit`
13-
jsonObject.addProperty("browser_version", "latest");
14-
jsonObject.addProperty("name", "Test on Playwright emulated Devices");
15-
jsonObject.addProperty("build", "playwright-java-4");
16-
jsonObject.addProperty("browserstack.username", "BROWSERSTACK_USERNAME");
17-
jsonObject.addProperty("browserstack.accessKey", "BROWSERSTACK_ACCESS_KEY");
11+
JsonObject capabilitiesObject = new JsonObject();
12+
capabilitiesObject.addProperty("browser", "playwright-webkit"); // allowed browsers are `chrome`, `edge`, `playwright-chromium`, `playwright-firefox` and `playwright-webkit`
13+
capabilitiesObject.addProperty("browser_version", "latest");
14+
capabilitiesObject.addProperty("name", "Test on Playwright emulated Devices");
15+
capabilitiesObject.addProperty("build", "playwright-java-4");
16+
capabilitiesObject.addProperty("browserstack.username", "BROWSERSTACK_USERNAME");
17+
capabilitiesObject.addProperty("browserstack.accessKey", "BROWSERSTACK_ACCESS_KEY");
1818

1919
BrowserType chromium = playwright.chromium();
20-
String caps = URLEncoder.encode(jsonObject.toString(), "utf-8");
20+
String caps = URLEncoder.encode(capabilitiesObject.toString(), "utf-8");
2121
String ws_endpoint = "wss://cdp.browserstack.com/playwright?caps=" + caps;
2222

2323
Browser browser = chromium.connect(ws_endpoint);
@@ -29,25 +29,31 @@ public static void main(String[] args) {
2929
.setHasTouch(true));
3030

3131
Page page = context.newPage();
32-
page.navigate("https://www.google.co.in/");
33-
Locator locator = page.locator("[aria-label='Search']");
34-
locator.click();
35-
page.fill("[aria-label='Search']", "BrowserStack");
36-
page.keyboard().press("Enter");
37-
page.locator("[aria-current='page']").waitFor();
38-
String title = page.title();
32+
try {
33+
page.navigate("https://www.google.co.in/");
34+
Locator locator = page.locator("[aria-label='Search']");
35+
locator.click();
36+
page.fill("[aria-label='Search']", "BrowserStack");
37+
page.keyboard().press("Enter");
38+
page.locator("[aria-current='page']").waitFor();
39+
String title = page.title();
3940

40-
Object result;
41-
if (title.equals("BrowserStack - Google Search")) {
42-
// following line of code is responsible for marking the status of the test on BrowserStack as 'passed'. You can use this code in your after hook after each test
43-
result = page.evaluate("_ => {}", "browserstack_executor: { \"action\": \"setSessionStatus\", \"arguments\": { \"status\": \"passed\", \"reason\": \"Title matched\"}}");
44-
} else {
45-
result = page.evaluate("_ => {}", "browserstack_executor: { \"action\": \"setSessionStatus\", \"arguments\": { \"status\": \"failed\", \"reason\": \"Title did not matched\"}}");
41+
if (title.equals("BrowserStack - Google Search")) {
42+
// following line of code is responsible for marking the status of the test on BrowserStack as 'passed'. You can use this code in your after hook after each test
43+
markTestStatus("passed", "Title matched", page);
44+
} else {
45+
markTestStatus("failed", "Title did not match", page);
46+
}
47+
} catch (Exception err) {
48+
markTestStatus("failed", err.getMessage(), page);
4649
}
47-
4850
browser.close();
4951
} catch (UnsupportedEncodingException e) {
5052
System.out.println(e);
5153
}
5254
}
55+
public static void markTestStatus(String status, String reason, Page page) {
56+
Object result;
57+
result = page.evaluate("_ => {}", "browserstack_executor: { \"action\": \"setSessionStatus\", \"arguments\": { \"status\": \"" + status + "\", \"reason\": \"" + reason + "\"}}");
58+
}
5359
}

playwright-java/src/test/java/com/browserstack/PlaywrightPixelTest.java

Lines changed: 28 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,16 @@
88
public class PlaywrightPixelTest {
99
public static void main(String[] args) {
1010
try (Playwright playwright = Playwright.create()) {
11-
JsonObject jsonObject = new JsonObject();
12-
jsonObject.addProperty("browser", "playwright-webkit"); // allowed browsers are `chrome`, `edge`, `playwright-chromium`, `playwright-firefox` and `playwright-webkit`
13-
jsonObject.addProperty("browser_version", "latest");
14-
jsonObject.addProperty("name", "Test on Playwright emulated Devices");
15-
jsonObject.addProperty("build", "playwright-java-4");
16-
jsonObject.addProperty("browserstack.username", "BROWSERSTACK_USERNAME");
17-
jsonObject.addProperty("browserstack.accessKey", "BROWSERSTACK_ACCESS_KEY");
11+
JsonObject capabilitiesObject = new JsonObject();
12+
capabilitiesObject.addProperty("browser", "playwright-webkit"); // allowed browsers are `chrome`, `edge`, `playwright-chromium`, `playwright-firefox` and `playwright-webkit`
13+
capabilitiesObject.addProperty("browser_version", "latest");
14+
capabilitiesObject.addProperty("name", "Test on Playwright emulated Devices");
15+
capabilitiesObject.addProperty("build", "playwright-java-4");
16+
capabilitiesObject.addProperty("browserstack.username", "BROWSERSTACK_USERNAME");
17+
capabilitiesObject.addProperty("browserstack.accessKey", "BROWSERSTACK_ACCESS_KEY");
1818

1919
BrowserType chromium = playwright.chromium();
20-
String caps = URLEncoder.encode(jsonObject.toString(), "utf-8");
20+
String caps = URLEncoder.encode(capabilitiesObject.toString(), "utf-8");
2121
String ws_endpoint = "wss://cdp.browserstack.com/playwright?caps=" + caps;
2222

2323
Browser browser = chromium.connect(ws_endpoint);
@@ -30,25 +30,31 @@ public static void main(String[] args) {
3030
.setHasTouch(true));
3131

3232
Page page = context.newPage();
33-
page.navigate("https://www.google.co.in/");
34-
Locator locator = page.locator("[aria-label='Search']");
35-
locator.click();
36-
page.fill("[aria-label='Search']", "BrowserStack");
37-
page.keyboard().press("Enter");
38-
page.locator("[aria-current='page']").waitFor();
39-
String title = page.title();
33+
try {
34+
page.navigate("https://www.google.co.in/");
35+
Locator locator = page.locator("[aria-label='Search']");
36+
locator.click();
37+
page.fill("[aria-label='Search']", "BrowserStack");
38+
page.keyboard().press("Enter");
39+
page.locator("[aria-current='page']").waitFor();
40+
String title = page.title();
4041

41-
Object result;
42-
if (title.equals("BrowserStack - Google Search")) {
43-
// following line of code is responsible for marking the status of the test on BrowserStack as 'passed'. You can use this code in your after hook after each test
44-
result = page.evaluate("_ => {}", "browserstack_executor: { \"action\": \"setSessionStatus\", \"arguments\": { \"status\": \"passed\", \"reason\": \"Title matched\"}}");
45-
} else {
46-
result = page.evaluate("_ => {}", "browserstack_executor: { \"action\": \"setSessionStatus\", \"arguments\": { \"status\": \"failed\", \"reason\": \"Title did not matched\"}}");
42+
if (title.equals("BrowserStack - Google Search")) {
43+
// following line of code is responsible for marking the status of the test on BrowserStack as 'passed'. You can use this code in your after hook after each test
44+
markTestStatus("passed", "Title matched", page);
45+
} else {
46+
markTestStatus("passed", "Title did not match", page);
47+
}
48+
} catch (Exception err) {
49+
markTestStatus("failed", err.getMessage(), page);
4750
}
48-
4951
browser.close();
5052
} catch (UnsupportedEncodingException e) {
5153
System.out.println(e);
5254
}
5355
}
56+
public static void markTestStatus(String status, String reason, Page page) {
57+
Object result;
58+
result = page.evaluate("_ => {}", "browserstack_executor: { \"action\": \"setSessionStatus\", \"arguments\": { \"status\": \"" + status + "\", \"reason\": \"" + reason + "\"}}");
59+
}
5460
}

0 commit comments

Comments
 (0)