From b668c2b1725320219b19be3aecd88270898fb735 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Santos=20Laserna=20L=C3=B3pez?= Date: Thu, 9 Apr 2020 11:45:59 +0300 Subject: [PATCH 1/2] Add chrome options and Firefox options --- .../java/testUI/SelenideConfiguration.java | 4 +++ src/main/java/testUI/UIUtils.java | 22 ++++++++++++ src/main/java/testUI/elements/Element.java | 2 +- src/test/java/TestRunners/TestBrowser.java | 35 +++++++++++++++++++ 4 files changed, 62 insertions(+), 1 deletion(-) diff --git a/src/main/java/testUI/SelenideConfiguration.java b/src/main/java/testUI/SelenideConfiguration.java index 1f4dd19..34aa3de 100644 --- a/src/main/java/testUI/SelenideConfiguration.java +++ b/src/main/java/testUI/SelenideConfiguration.java @@ -1,6 +1,8 @@ package testUI; import com.codeborne.selenide.AssertionMode; +import org.openqa.selenium.chrome.ChromeOptions; +import org.openqa.selenium.firefox.FirefoxOptions; import org.openqa.selenium.remote.DesiredCapabilities; public class SelenideConfiguration { @@ -34,5 +36,7 @@ public class SelenideConfiguration { // public static boolean driverManagerEnabled; public static boolean headless = false; public static String browserBinary = ""; + public static ChromeOptions chromeOptions; + public static FirefoxOptions firefoxOptions; } diff --git a/src/main/java/testUI/UIUtils.java b/src/main/java/testUI/UIUtils.java index af8af01..64f4293 100644 --- a/src/main/java/testUI/UIUtils.java +++ b/src/main/java/testUI/UIUtils.java @@ -5,6 +5,8 @@ import io.appium.java_client.service.local.AppiumDriverLocalService; import io.qameta.allure.Allure; import org.openqa.selenium.JavascriptExecutor; +import org.openqa.selenium.chrome.ChromeDriver; +import org.openqa.selenium.firefox.FirefoxDriver; import testUI.Utils.TestUIException; import java.util.ArrayList; @@ -188,8 +190,28 @@ private static void setUpSelenideVariables() { ? defaults.browserPosition() : Configuration.browserPosition; } + private static void setChromeDriver() { + if (Configuration.chromeOptions != null && Configuration.browser.toLowerCase().equals( + "chrome")) { + ChromeDriver driver = new ChromeDriver(Configuration.chromeOptions); + setDriver(driver); + Runtime.getRuntime().addShutdownHook(new Thread(driver::close)); + } + } + + private static void setFirefoxDriver() { + if (Configuration.firefoxOptions != null && Configuration.browser.toLowerCase().equals( + "firefox")) { + FirefoxDriver driver = new FirefoxDriver(Configuration.firefoxOptions); + setDriver(driver); + Runtime.getRuntime().addShutdownHook(new Thread(driver::close)); + } + } + protected static void startSelenideDriver(String urlOrRelativeUrl) { setUpSelenideVariables(); + setChromeDriver(); + setFirefoxDriver(); open(urlOrRelativeUrl); } diff --git a/src/main/java/testUI/elements/Element.java b/src/main/java/testUI/elements/Element.java index cbd219b..97c3282 100644 --- a/src/main/java/testUI/elements/Element.java +++ b/src/main/java/testUI/elements/Element.java @@ -399,7 +399,7 @@ public UIElement sendKeys(CharSequence charSequence) { } long finalTime = System.currentTimeMillis() - t; putLogDebug("Send keys '" + charSequence + "' to element '" + stringElement + - " after " + finalTime + " ms"); + "' after " + finalTime + " ms"); return getElementObject(); } diff --git a/src/test/java/TestRunners/TestBrowser.java b/src/test/java/TestRunners/TestBrowser.java index 4a85a40..f89a49d 100644 --- a/src/test/java/TestRunners/TestBrowser.java +++ b/src/test/java/TestRunners/TestBrowser.java @@ -10,6 +10,9 @@ import testUI.Configuration; import testUI.Utils.GridTestUI; +import java.util.HashMap; +import java.util.Map; + import static testUI.TestUIDriver.getSelenideDriver; import static testUI.TestUIDriver.setDriver; import static testUI.TestUIServer.stop; @@ -19,6 +22,7 @@ import static testUI.Utils.By.*; import static testUI.Utils.Performance.getListOfCommandsTime; import static testUI.Utils.Performance.logAverageTime; +import static testUI.elements.TestUI.E; public class TestBrowser { private GoogleLandingPage googleLandingPage = new GoogleLandingPage(); @@ -163,4 +167,35 @@ public void testAndroidBrowserOneLine() { .then("I find the submit").setElement(byCssSelector("[type=\"submit\"]")) .and("I click on it").click(); } + + @Test + public void testUIWithLoadero() { + + String linkId = "AbbzyH2Gl_dPBPk0"; + int participant = 1; + sleep(participant * 15 * 1000); + ChromeOptions options = new ChromeOptions(); + Map prefs = new HashMap(); + prefs.put("profile.default_content_setting_values.notifications", 1); + options.setExperimentalOption("prefs", prefs); + options.addArguments("no-sandbox"); + options.addArguments("use-fake-ui-for-media-stream"); + options.addArguments("use-fake-device-for-media-stream"); + ChromeDriver driver = new ChromeDriver(options); + setDriver(driver); + Configuration.testUILogLevel = LogLevel.DEBUG; + open("https://m.me/v/" + linkId); + E(byId("username")).sendKeys("Test"); + E(byCssSelector("._6z07")).waitFor(10).untilIsVisible().click(); + for (int i = 0; i < 10; i++) { + try { + E(byCssSelector("[aria-label=\"Mute microphone\"]")).waitFor(10).untilIsVisible().click(); + E(byCssSelector("[aria-label=\"Unmute microphone\"]")).waitFor(4).untilIsVisible(); + break; + } catch(Error e) { + System.out.println(e.getMessage()); + } + } + sleep(600000); + } } From 4cb393627f9c8607d51670f2b612428e7eb61a20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Santos=20Laserna=20L=C3=B3pez?= Date: Thu, 9 Apr 2020 11:47:20 +0300 Subject: [PATCH 2/2] remove test --- src/test/java/TestRunners/TestBrowser.java | 36 ---------------------- 1 file changed, 36 deletions(-) diff --git a/src/test/java/TestRunners/TestBrowser.java b/src/test/java/TestRunners/TestBrowser.java index f89a49d..e7cfd0a 100644 --- a/src/test/java/TestRunners/TestBrowser.java +++ b/src/test/java/TestRunners/TestBrowser.java @@ -5,14 +5,10 @@ import org.junit.Test; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; -import org.openqa.selenium.remote.DesiredCapabilities; import pages.GoogleLandingPage; import testUI.Configuration; import testUI.Utils.GridTestUI; -import java.util.HashMap; -import java.util.Map; - import static testUI.TestUIDriver.getSelenideDriver; import static testUI.TestUIDriver.setDriver; import static testUI.TestUIServer.stop; @@ -22,7 +18,6 @@ import static testUI.Utils.By.*; import static testUI.Utils.Performance.getListOfCommandsTime; import static testUI.Utils.Performance.logAverageTime; -import static testUI.elements.TestUI.E; public class TestBrowser { private GoogleLandingPage googleLandingPage = new GoogleLandingPage(); @@ -167,35 +162,4 @@ public void testAndroidBrowserOneLine() { .then("I find the submit").setElement(byCssSelector("[type=\"submit\"]")) .and("I click on it").click(); } - - @Test - public void testUIWithLoadero() { - - String linkId = "AbbzyH2Gl_dPBPk0"; - int participant = 1; - sleep(participant * 15 * 1000); - ChromeOptions options = new ChromeOptions(); - Map prefs = new HashMap(); - prefs.put("profile.default_content_setting_values.notifications", 1); - options.setExperimentalOption("prefs", prefs); - options.addArguments("no-sandbox"); - options.addArguments("use-fake-ui-for-media-stream"); - options.addArguments("use-fake-device-for-media-stream"); - ChromeDriver driver = new ChromeDriver(options); - setDriver(driver); - Configuration.testUILogLevel = LogLevel.DEBUG; - open("https://m.me/v/" + linkId); - E(byId("username")).sendKeys("Test"); - E(byCssSelector("._6z07")).waitFor(10).untilIsVisible().click(); - for (int i = 0; i < 10; i++) { - try { - E(byCssSelector("[aria-label=\"Mute microphone\"]")).waitFor(10).untilIsVisible().click(); - E(byCssSelector("[aria-label=\"Unmute microphone\"]")).waitFor(4).untilIsVisible(); - break; - } catch(Error e) { - System.out.println(e.getMessage()); - } - } - sleep(600000); - } }