Testing with a selenium driver in Java without opening any browser

后端 未结 4 1501
暖寄归人
暖寄归人 2020-12-17 00:40

I need to test with selenium chrome driver in Java. But chrome window should\'t be opened. Assume this a product and no window should be opened.

I\'ve also looked at

相关标签:
4条回答
  • 2020-12-17 01:08

    In selenium web driver there is headless mode. so in headless mode you can do the automation without opening the web browser. and also you can deploy your application in none gui system

        ChromeOptions options = new ChromeOptions();
        // setting headless mode to true.. so there isn't any ui
        options.setHeadless(true);
    
        // Create a new instance of the Chrome driver
        WebDriver driver = new ChromeDriver(options);
    
    0 讨论(0)
  • 2020-12-17 01:10

    I like this article.

    Basically you need to add PhantomJS dependency in pom (I like maven for dependency management):

    <dependency>
        <groupId>com.github.detro.ghostdriver</groupId>
        <artifactId>phantomjsdriver</artifactId>
        <version>1.1.0</version>
    </dependency>
    

    And run code

        System.setProperty( "phantomjs.binary.path", "c:\\path\\to\\phantomjs-1.9.8-windows\\phantomjs.exe" );
        WebDriver driver = new PhantomJSDriver();
        driver.get("http://www.google.com");
        driver.quit();
    

    It worked for me with versions:

    • PhantomJS 1.9.8
    • PhantomJS driver 1.1.0
    • Selenium 2.44.0
    0 讨论(0)
  • 2020-12-17 01:24

    Go with PhantomJS but if running them in chromedriver is required and you have the resources, this blog has a good recipe on running headless selenium with chrome. Requiring you to download the following...

    • VirtualBox
    • Vagrant
    • NodeJS

    If you plan to implement Jenkins or any other CI in the future, I strongly suggest going with PhantomJS though.

    0 讨论(0)
  • 2020-12-17 01:30

    GhostDriver and PhantomJS should let you do what you want.

    0 讨论(0)
提交回复
热议问题