From 5abd19decaf9d908eac99ccd018339b25e4a166d Mon Sep 17 00:00:00 2001 From: pabloFuente Date: Wed, 28 Dec 2022 12:56:45 +0100 Subject: [PATCH] openvidu-test-e2e: remove unnecessary webdriver-manager. Use new Selenium Manager --- openvidu-test-browsers/pom.xml | 6 -- .../test/browsers/AndroidAppUser.java | 12 +-- .../test/browsers/AndroidFirefoxUser.java | 78 ------------------- openvidu-test-e2e/pom.xml | 11 --- .../io/openvidu/test/e2e/OpenViduTestE2e.java | 29 ------- .../test/e2e/OpenViduProTestAppE2eTest.java | 2 - .../test/e2e/OpenViduTestAppE2eTest.java | 6 +- pom.xml | 4 +- 8 files changed, 6 insertions(+), 142 deletions(-) delete mode 100644 openvidu-test-browsers/src/main/java/io/openvidu/test/browsers/AndroidFirefoxUser.java diff --git a/openvidu-test-browsers/pom.xml b/openvidu-test-browsers/pom.xml index c9771bf1..8631f253 100644 --- a/openvidu-test-browsers/pom.xml +++ b/openvidu-test-browsers/pom.xml @@ -101,12 +101,6 @@ io.appium java-client ${version.appium} - - - org.springframework - spring-context - - diff --git a/openvidu-test-browsers/src/main/java/io/openvidu/test/browsers/AndroidAppUser.java b/openvidu-test-browsers/src/main/java/io/openvidu/test/browsers/AndroidAppUser.java index ef44de1c..b40ea7af 100644 --- a/openvidu-test-browsers/src/main/java/io/openvidu/test/browsers/AndroidAppUser.java +++ b/openvidu-test-browsers/src/main/java/io/openvidu/test/browsers/AndroidAppUser.java @@ -3,22 +3,16 @@ package io.openvidu.test.browsers; import java.net.MalformedURLException; import java.net.URL; -import org.openqa.selenium.WebElement; - import io.appium.java_client.AppiumDriver; -import io.appium.java_client.android.AndroidOptions; -import io.appium.java_client.remote.MobilePlatform; +import io.appium.java_client.android.options.UiAutomator2Options; public class AndroidAppUser extends BrowserUser { public AndroidAppUser(String userName, int timeOfWaitInSeconds, String appPath) { super(userName, timeOfWaitInSeconds); - AndroidOptions options = new AndroidOptions(); - options.setAutomationName("UiAutomator2"); + UiAutomator2Options options = new UiAutomator2Options(); options.setPlatformVersion("12.0"); - options.setPlatformName(MobilePlatform.ANDROID); - options.setAutomationName("UiAutomator2"); options.setDeviceName("Android device"); options.setAutoWebview(true); options.setApp(appPath); @@ -29,7 +23,7 @@ public class AndroidAppUser extends BrowserUser { } catch (MalformedURLException e) { e.printStackTrace(); } - this.driver = new AppiumDriver(url, options); + this.driver = new AppiumDriver(url, options); this.configureDriver(); } diff --git a/openvidu-test-browsers/src/main/java/io/openvidu/test/browsers/AndroidFirefoxUser.java b/openvidu-test-browsers/src/main/java/io/openvidu/test/browsers/AndroidFirefoxUser.java deleted file mode 100644 index ed6c6724..00000000 --- a/openvidu-test-browsers/src/main/java/io/openvidu/test/browsers/AndroidFirefoxUser.java +++ /dev/null @@ -1,78 +0,0 @@ -package io.openvidu.test.browsers; - -import java.net.MalformedURLException; -import java.net.URL; -import java.util.HashMap; -import java.util.Map; - -import org.openqa.selenium.UnexpectedAlertBehaviour; -import org.openqa.selenium.firefox.FirefoxOptions; -import org.openqa.selenium.firefox.FirefoxProfile; -import org.openqa.selenium.remote.RemoteWebDriver; - -import io.appium.java_client.android.AndroidDriver; -import io.appium.java_client.remote.MobileCapabilityType; -import io.appium.java_client.remote.MobilePlatform; - -public class AndroidFirefoxUser extends BrowserUser { - - public AndroidFirefoxUser(String userName, int timeOfWaitInSeconds) { - super(userName, timeOfWaitInSeconds); - - FirefoxOptions options = new FirefoxOptions(); - options.setCapability(MobileCapabilityType.PLATFORM_VERSION, "12.0"); - options.setCapability(MobileCapabilityType.PLATFORM_NAME, MobilePlatform.ANDROID); - options.setCapability(MobileCapabilityType.AUTOMATION_NAME, "Appium"); - - URL url = null; - try { - url = new URL("http://172.17.0.1:4723/wd/hub"); - } catch (MalformedURLException e) { - e.printStackTrace(); - } - - AndroidDriver driver = new AndroidDriver<>(url, options); - driver.installApp("/opt/openvidu-cache/firefox-91-4-0.apk"); - driver.quit(); - - options.setAcceptInsecureCerts(true); - options.setUnhandledPromptBehaviour(UnexpectedAlertBehaviour.IGNORE); - - FirefoxProfile profile = new FirefoxProfile(); - // This flag avoids granting the access to the camera - profile.setPreference("media.navigator.permission.disabled", true); - // This flag force to use fake user media (synthetic video of multiple color) - profile.setPreference("media.navigator.streams.fake", true); - // These flags allows controlling Firefox remotely - profile.setPreference("devtools.debugger.remote-enabled", true); - - options.setCapability(MobileCapabilityType.DEVICE_NAME, "Android device"); - options.setCapability(MobileCapabilityType.BROWSER_NAME, "firefox"); - options.setCapability(MobileCapabilityType.PLATFORM_NAME, "linux"); - options.setCapability(MobileCapabilityType.AUTOMATION_NAME, "Gecko"); - - options.setCapability("appium:automationName", "Gecko"); - options.setCapability("marionette", true); - options.setCapability("appium:marionette", true); - options.setCapability("androidStorage", "app"); - options.setCapability("appium:androidStorage", "app"); - - Map mozFirefoxOptions = new HashMap<>(); - mozFirefoxOptions.put("androidPackage", "org.mozilla.firefox"); - mozFirefoxOptions.put("androidDeviceSerial", "emulator-5554"); - mozFirefoxOptions.put("binary", "/Applications/Firefox.app"); - options.setCapability("moz:firefoxOptions", mozFirefoxOptions); - - long initTime = System.currentTimeMillis(); - try { - this.driver = new RemoteWebDriver(url, options); - } catch (Exception e) { - log.error("{}", e); - } - log.info("Remote web driver for Firefox Android initialized after {} ms", - System.currentTimeMillis() - initTime); - - this.configureDriver(); - } - -} diff --git a/openvidu-test-e2e/pom.xml b/openvidu-test-e2e/pom.xml index a0187277..cee8cb7a 100644 --- a/openvidu-test-e2e/pom.xml +++ b/openvidu-test-e2e/pom.xml @@ -72,17 +72,6 @@ spring-boot-starter-test ${version.spring-boot} - - io.github.bonigarcia - webdrivermanager - 5.3.1 - - - org.slf4j - slf4j-api - - - org.seleniumhq.selenium selenium-java diff --git a/openvidu-test-e2e/src/main/java/io/openvidu/test/e2e/OpenViduTestE2e.java b/openvidu-test-e2e/src/main/java/io/openvidu/test/e2e/OpenViduTestE2e.java index 1215d29f..1961a41d 100644 --- a/openvidu-test-e2e/src/main/java/io/openvidu/test/e2e/OpenViduTestE2e.java +++ b/openvidu-test-e2e/src/main/java/io/openvidu/test/e2e/OpenViduTestE2e.java @@ -43,14 +43,12 @@ import com.google.gson.Gson; import com.google.gson.JsonObject; import com.google.gson.JsonParser; -import io.github.bonigarcia.wdm.WebDriverManager; import io.openvidu.java.client.OpenVidu; import io.openvidu.java.client.OpenViduHttpException; import io.openvidu.java.client.OpenViduJavaClientException; import io.openvidu.java.client.VideoCodec; import io.openvidu.test.browsers.AndroidAppUser; import io.openvidu.test.browsers.AndroidChromeUser; -import io.openvidu.test.browsers.AndroidFirefoxUser; import io.openvidu.test.browsers.BrowserUser; import io.openvidu.test.browsers.ChromeUser; import io.openvidu.test.browsers.EdgeUser; @@ -197,21 +195,6 @@ public class OpenViduTestE2e { return android; } - protected static void prepareBrowserDrivers(Set browsers) { - if (browsers.contains(BrowserNames.CHROME) && !isRemote(BrowserNames.CHROME)) { - WebDriverManager.chromedriver().setup(); - } - if (browsers.contains(BrowserNames.FIREFOX) && !isRemote(BrowserNames.FIREFOX)) { - WebDriverManager.firefoxdriver().setup(); - } - if (browsers.contains(BrowserNames.OPERA) && !isRemote(BrowserNames.OPERA)) { - WebDriverManager.operadriver().setup(); - } - if (browsers.contains(BrowserNames.EDGE) && !isRemote(BrowserNames.EDGE)) { - WebDriverManager.edgedriver().setup(); - } - } - protected static void cleanFoldersAndSetUpOpenViduJavaClient() { try { log.info("Cleaning folder /opt/openvidu/recordings"); @@ -401,18 +384,6 @@ public class OpenViduTestE2e { } browserUser = new AndroidChromeUser("TestUser", 50); break; - case "androidFirefox": - container = androidContainer("budtmo/docker-android-x86-12.0:latest", 4294967296L); - setupBrowserAux(BrowserNames.ANDROID, container, false); - try { - // Download geckodriver and place in PATH at /usr/bin/ - container.execInContainer("bash", "-c", - "wget https://github.com/mozilla/geckodriver/releases/download/v0.30.0/geckodriver-v0.30.0-linux64.tar.gz && tar -xf geckodriver*.tar.gz && rm geckodriver*.tar.gz && mv geckodriver /usr/bin/."); - } catch (UnsupportedOperationException | IOException | InterruptedException e) { - log.error("Error running command in Android container"); - } - browserUser = new AndroidFirefoxUser("TestUser", 50); - break; case "androidApp": container = androidContainer("budtmo/docker-android-x86-12.0:latest", 4294967296L); setupBrowserAux(BrowserNames.ANDROID, container, false); diff --git a/openvidu-test-e2e/src/test/java/io/openvidu/test/e2e/OpenViduProTestAppE2eTest.java b/openvidu-test-e2e/src/test/java/io/openvidu/test/e2e/OpenViduProTestAppE2eTest.java index 9a9e4c17..e1b6d494 100644 --- a/openvidu-test-e2e/src/test/java/io/openvidu/test/e2e/OpenViduProTestAppE2eTest.java +++ b/openvidu-test-e2e/src/test/java/io/openvidu/test/e2e/OpenViduProTestAppE2eTest.java @@ -50,7 +50,6 @@ import io.openvidu.java.client.OpenViduHttpException; import io.openvidu.java.client.OpenViduRole; import io.openvidu.java.client.Recording; import io.openvidu.java.client.Session; -import io.openvidu.test.browsers.utils.BrowserNames; import io.openvidu.test.browsers.utils.CustomHttpClient; import io.openvidu.test.browsers.utils.Unzipper; @@ -62,7 +61,6 @@ public class OpenViduProTestAppE2eTest extends AbstractOpenViduTestappE2eTest { protected static void setupAll() { checkFfmpegInstallation(); loadEnvironmentVariables(); - prepareBrowserDrivers(new HashSet<>(Arrays.asList(BrowserNames.CHROME))); cleanFoldersAndSetUpOpenViduJavaClient(); } diff --git a/openvidu-test-e2e/src/test/java/io/openvidu/test/e2e/OpenViduTestAppE2eTest.java b/openvidu-test-e2e/src/test/java/io/openvidu/test/e2e/OpenViduTestAppE2eTest.java index c8d370be..ba85f42f 100644 --- a/openvidu-test-e2e/src/test/java/io/openvidu/test/e2e/OpenViduTestAppE2eTest.java +++ b/openvidu-test-e2e/src/test/java/io/openvidu/test/e2e/OpenViduTestAppE2eTest.java @@ -23,7 +23,6 @@ import java.io.File; import java.util.Arrays; import java.util.Base64; import java.util.Collection; -import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Map; @@ -81,7 +80,6 @@ import io.openvidu.java.client.Session; import io.openvidu.java.client.SessionProperties; import io.openvidu.java.client.VideoCodec; import io.openvidu.test.browsers.BrowserUser; -import io.openvidu.test.browsers.utils.BrowserNames; import io.openvidu.test.browsers.utils.CustomHttpClient; import io.openvidu.test.browsers.utils.RecordingUtils; import io.openvidu.test.browsers.utils.layout.CustomLayoutHandler; @@ -103,8 +101,6 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest { protected static void setupAll() throws Exception { checkFfmpegInstallation(); loadEnvironmentVariables(); - prepareBrowserDrivers(new HashSet<>(Arrays.asList(BrowserNames.CHROME, BrowserNames.FIREFOX, - BrowserNames.EDGE /* , BrowserNames.OPERA, BrowserNames.ANDROID */))); cleanFoldersAndSetUpOpenViduJavaClient(); getDefaultTranscodingValues(); } @@ -173,7 +169,7 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest { log.info("Android emulator ready after {} seconds", (System.currentTimeMillis() - initTime) / 1000); log.info("One2One Ionic Android"); - AppiumDriver appiumDriver = (AppiumDriver) user.getDriver(); + AppiumDriver appiumDriver = (AppiumDriver) user.getDriver(); appiumDriver.findElement(By.cssSelector("#settings-button")).click(); Thread.sleep(500); WebElement urlInput = appiumDriver.findElement(By.cssSelector("#openvidu-url")); diff --git a/pom.xml b/pom.xml index c082f7cc..3379e307 100644 --- a/pom.xml +++ b/pom.xml @@ -51,7 +51,7 @@ 1.1.1 5.9.1 - 4.6.0 + 4.7.2 4.9.0 2.0.9 3.1.9 @@ -60,7 +60,7 @@ 2.10 0.2.5 1.17.6 - 7.6.0 + 8.3.0 2.0.0 3.10.1