Example usage for org.openqa.selenium.net PortProber findFreePort

List of usage examples for org.openqa.selenium.net PortProber findFreePort

Introduction

In this page you can find the example usage for org.openqa.selenium.net PortProber findFreePort.

Prototype

public static int findFreePort() 

Source Link

Usage

From source file:com.mycompany.myproject.utilities.server.TestServerUtils.java

License:Apache License

private static void createServer() {
    serverPort = PortProber.findFreePort();
    localIP = new NetworkUtils().getPrivateLocalAddress();
    initServer();
}

From source file:com.opera.core.systems.runner.launcher.OperaLauncherRunner.java

License:Apache License

public OperaLauncherRunner(OperaLauncherRunnerSettings settings) {
    // Rely on OperaRunner to parse most of the settings
    super(settings);

    // Parse remaining launcher-related settings
    Integer launcherPort = PortProber.findFreePort();
    Integer display = settings.getDisplay();
    //OperaProduct product = settings.getProduct();
    String binary;/*w  w w.j av a 2  s  .co m*/
    if (settings.getBinary() == null) {
        binary = OperaPaths.operaPath();
    } else {
        binary = settings.getBinary().getAbsolutePath();
    }

    List<String> launcherArguments = new ArrayList<String>();
    launcherArguments.add("-host");
    launcherArguments.add("127.0.0.1");
    launcherArguments.add("-port");
    launcherArguments.add(launcherPort.toString());
    if (display != null && display > 0) {
        launcherArguments.add("-display");
        launcherArguments.add(":" + display.toString());
    }
    if (settings.getLoggingLevel() != null && settings.getLoggingLevel() != Level.OFF) {
        launcherArguments.add("-console"); // TODO(andreastt): Allow for file logging
        launcherArguments.add("-verbosity");
        launcherArguments.add(settings.getLoggingLevel().toString());
    }
    // TODO(andreastt): Disabled due to current launcher not having -profile
    /*
    if (product != OperaProduct.ALL) {
      launcherArguments.add("-profile");
      launcherArguments.add(product.toString());
    }
    */
    if (settings.getNoQuit()) {
        launcherArguments.add("-noquit");
    }
    launcherArguments.add("-bin");
    launcherArguments.add(binary);

    // The launcher will pass on any extra arguments after -bin to Opera
    for (OperaArgument argument : super.settings.getArguments().getArguments()) {
        launcherArguments.add(super.settings.getArguments().sign() + argument.getArgument());
        if (argument.getValue() != null && !argument.getValue().isEmpty()) {
            launcherArguments.add(argument.getValue());
        }
    }

    logger.config("launcher arguments: " + launcherArguments.toString());

    // Make sure that the launcher is executable
    settings.makeLauncherExecutable();

    // Setup the launcher binary
    try {
        launcherRunner = new OperaLauncherBinary(settings.getLauncher().getAbsolutePath(),
                launcherArguments.toArray(new String[launcherArguments.size()]));
    } catch (IOException e) {
        throw new OperaRunnerException("Unable to start launcher: " + e.getMessage());
    }

    logger.fine("Waiting for launcher connection on port " + launcherPort);

    try {
        // Setup listener server
        ServerSocket listenerServer = new ServerSocket(launcherPort);
        listenerServer.setSoTimeout((int) OperaIntervals.LAUNCHER_TIMEOUT.getValue());

        // Try to connect
        launcherProtocol = new OperaLauncherProtocol(listenerServer.accept());

        // We did it!
        logger.fine("Connected with launcher on port " + launcherPort);
        listenerServer.close();

        // Do the handshake!
        LauncherHandshakeRequest.Builder request = LauncherHandshakeRequest.newBuilder();
        ResponseEncapsulation res = launcherProtocol.sendRequest(MessageType.MSG_HELLO,
                request.build().toByteArray());

        // Are we happy?
        if (res.isSuccess()) {
            logger.finer("Got launcher handshake: " + res.getResponse().toString());
        } else {
            throw new OperaRunnerException("Did not get launcher handshake: " + res.getResponse().toString());
        }
    } catch (SocketTimeoutException e) {
        throw new OperaRunnerException("Timeout waiting for launcher to connect on port " + launcherPort, e);
    } catch (IOException e) {
        throw new OperaRunnerException("Unable to listen to launcher port " + launcherPort, e);
    }
}

From source file:com.opera.core.systems.runner.OperaRunnerSettings.java

License:Apache License

public Integer getPort() {
    // The port Opera should connect to.  0 = Random, -1 = Opera default (7001) (for use with Opera
    // < 11.60).
    if (port == 0) {
        port = PortProber.findFreePort();
    } else if (port == -1) {
        port = (int) OperaIntervals.SERVER_PORT.getValue();
    }//from w  ww  .j a  va  2 s.  c  om

    return port;
}

From source file:com.opera.core.systems.runner.OperaRunnerSettings.java

License:Apache License

public void setPort(Integer port) {
    // The port Opera should connect to.  0 = Random, -1 = Opera default (7001) (for use with Opera
    // < 11.60).
    if (port == 0) {
        this.port = PortProber.findFreePort();
    } else if (port == -1) {
        this.port = (int) OperaIntervals.SERVER_PORT.getValue();
    } else {/* w ww .  j a  v a2  s.  c om*/
        this.port = port;
    }

    this.port = port;
}

From source file:com.thoughtworks.selenium.testing.SeleniumTestEnvironment.java

License:Apache License

public SeleniumTestEnvironment() {
    this(PortProber.findFreePort());
}

From source file:com.thoughtworks.selenium.webdriven.WebDriverBackedSeleniumServletTest.java

License:Apache License

@Before
public void setUpServer() throws Exception {
    server = new Server();

    // Register the emulator
    ServletContextHandler handler = new ServletContextHandler();

    DefaultDriverSessions webdriverSessions = new DefaultDriverSessions();
    handler.setAttribute(DriverServlet.SESSIONS_KEY, webdriverSessions);
    handler.setContextPath("/");
    handler.addServlet(WebDriverBackedSeleniumServlet.class, "/selenium-server/driver/");
    server.setHandler(handler);/* w w  w. j  a  v a  2  s .  c o  m*/

    // And bind a port
    port = PortProber.findFreePort();
    HttpConfiguration httpConfig = new HttpConfiguration();
    ServerConnector http = new ServerConnector(server, new HttpConnectionFactory(httpConfig));
    http.setPort(port);
    server.setConnectors(new Connector[] { http });

    // Wait until the server is actually started.
    server.start();
    PortProber.pollPort(port);
}

From source file:configuration.AuraIntegrationTestConfig.java

License:Apache License

@Impl
public synchronized static WebDriverProvider auraWebDriverProvider() throws Exception {
    if (webDriverProvider == null) {
        URL serverUrl;//from w  w  w .j  a v a  2 s  . c o  m
        boolean runningOnSauceLabs = SauceUtil.areTestsRunningOnSauce();
        try {
            String hubUrlString = System.getProperty(WebDriverProvider.WEBDRIVER_SERVER_PROPERTY);
            if ((hubUrlString != null) && !hubUrlString.equals("")) {
                if (runningOnSauceLabs) {
                    serverUrl = SauceUtil.getSauceServerUrl();
                } else {
                    serverUrl = new URL(hubUrlString);
                }
            } else {

                int serverPort = PortProber.findFreePort();

                // quiet the verbose grid logging
                Logger selLog = Logger.getLogger("org.openqa");
                selLog.setLevel(Level.SEVERE);

                SeleniumServerLauncher.start("localhost", serverPort);
                serverUrl = new URL(String.format("http://localhost:%s/wd/hub", serverPort));
                System.setProperty(WebDriverProvider.WEBDRIVER_SERVER_PROPERTY, serverUrl.toString());
            }
            Logger.getLogger(AuraIntegrationTestConfig.class.getName())
                    .info("Selenium server url: " + serverUrl);
        } catch (Exception e) {
            e.printStackTrace();
            throw new Error(e);
        }
        if (!runningOnSauceLabs
                && Boolean.parseBoolean(System.getProperty(WebDriverProvider.REUSE_BROWSER_PROPERTY))) {
            webDriverProvider = new PooledRemoteWebDriverFactory(serverUrl);
        } else {
            webDriverProvider = new RemoteWebDriverFactory(serverUrl);
        }
    }
    return webDriverProvider;
}

From source file:net.codestory.simplelenium.driver.phantomjs.PhantomJsDownloader.java

License:Apache License

protected PhantomJSDriver createNewPhantomJsDriver(File phantomJsExe, Capabilities desiredCapabilities) {
    try {// www .j  a v  a  2  s  .  c o m
        URL url = new URL("http://localhost:" + PortProber.findFreePort());

        return new PhantomJSDriver(phantomJsExe, url, new File("target/phantomjs.log"), desiredCapabilities);
    } catch (MalformedURLException e) {
        throw new RuntimeException(e);
    }
}

From source file:net.codestory.simplelenium.driver.PhantomJsDownloader.java

License:Apache License

protected PhantomJSDriver createNewPhantomJsDriver(File phantomJsExe) {
    try {//  w  w  w .  j  a v  a2s. c  o m
        URL url = new URL("http://localhost:" + PortProber.findFreePort());

        return new PhantomJSDriver(phantomJsExe, url, new File("target/phantomjs.log"));
    } catch (MalformedURLException e) {
        throw new RuntimeException(e);
    }
}

From source file:org.auraframework.integration.test.util.AuraJettyServer.java

License:Apache License

public static Server getInstance() {
    if (instance == null) {
        String possiblePort = System.getProperty("jetty.port");
        int port;
        try {/*  w  w  w. ja  va  2s. c o m*/
            port = Integer.parseInt(possiblePort);
        } catch (Throwable t) {
            port = PortProber.findFreePort();
        }
        String host = System.getProperty("jetty.host");
        instance = new AuraJettyServer(host, port, "/");
    }
    return instance;
}