在硒项目中,相对于DesiredCapabilities.firefox()而言,相对于DesiredCapabilities.firefox()而言,如何使用"new FirefoxOptions()"寻址日志信息更为可取. [英] How to address the log INFO Using `new FirefoxOptions()` is preferred to `DesiredCapabilities.firefox()` in selenium project

查看:497
本文介绍了在硒项目中,相对于DesiredCapabilities.firefox()而言,相对于DesiredCapabilities.firefox()而言,如何使用"new FirefoxOptions()"寻址日志信息更为可取.的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我刚开始一个硒项目,但是事情做错了,所以经过一番搜索,我找到了这个解决方案.它可以工作,但是我不明白这些红色语句要我做什么,或者如何摆脱它们.

I just started a selenium project, but things didn't got right, so after searching a bit I found this solution. It works but i can't understand what these red statements want me to do, or how to get rid of them.

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxBinary;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.firefox.FirefoxOptions;
import org.openqa.selenium.remote.DesiredCapabilities;
import java.io.*;

public class SelTest1
{
    public  static void main(String [] args)
    {
        System.setProperty("webdriver.gecko.driver","X:\\Gecko\\geckodriver-v0.24.0-win64\\geckodriver.exe");

        File pathBinary = new File("X:\\FireFoxx\\firefox.exe");
        FirefoxBinary firefoxBinary = new FirefoxBinary(pathBinary);
        DesiredCapabilities desired = DesiredCapabilities.firefox();
        FirefoxOptions options = new FirefoxOptions();
        desired.setCapability(FirefoxOptions.FIREFOX_OPTIONS, options.setBinary(firefoxBinary));
        WebDriver obj = new FirefoxDriver(options);

        obj.get("http://www.google.com/");
    }
}

我得到了想要的结果,但我不理解警告{红色声明}

I got the result i wanted, but I don't understand the warning{ red statements}

我将这些红线放在{此处也为警告提供了方便}

I am putting those red lines { warnings here too for ease }

Jul 12, 2019 7:07:28 PM org.openqa.selenium.remote.DesiredCapabilities firefox
INFO: Using `new FirefoxOptions()` is preferred to `DesiredCapabilities.firefox()`
1562938650997   mozrunner::runner   INFO    Running command: "X:\\FireFoxx\\firefox.exe" "-marionette" "-foreground" "-no-remote" "-profile" "C:\\Users\\adars\\AppData\\Local\\Temp\\rust_mozprofile.uTUmeENutxin"
1562938652637   addons.webextension.screenshots@mozilla.org WARN    Loading extension 'screenshots@mozilla.org': Reading manifest: Invalid extension permission: mozillaAddons
1562938652638   addons.webextension.screenshots@mozilla.org WARN    Loading extension 'screenshots@mozilla.org': Reading manifest: Invalid extension permission: resource://pdf.js/
1562938652638   addons.webextension.screenshots@mozilla.org WARN    Loading extension 'screenshots@mozilla.org': Reading manifest: Invalid extension permission: about:reader*
1562938655909   Marionette  INFO    Listening on port 50040
1562938655964   Marionette  WARN    TLS certificate errors will be ignored for this session
Jul 12, 2019 7:07:36 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C

推荐答案

INFO 日志消息:

INFO: Using `new FirefoxOptions()` is preferred to `DesiredCapabilities.firefox()`

是合并在以下内容中的结果:

is the result of the changes incorporated in:

  • 硒v3.0.0-beta4

Added ability to use FirefoxOptions when starting firefox.

  • Selenium v​​3.5.0

    * Start making *Option classes instances of Capabilities. This allows
      the user to do:
    
      `WebDriver driver = new RemoteWebDriver(new InternetExplorerOptions());`
    

  • 如果您的用例是明确提及FirefoxBinary的绝对位置,则可以使用以下解决方案:

    If your usecase is to explicitly mention the absolute location of the FirefoxBinary you can use the following solution:

    • 使用FirefoxOptions:

    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.firefox.FirefoxDriver;
    import org.openqa.selenium.firefox.FirefoxOptions;
    
    public class A_Firefox_binary 
    {
        public static void main(String[] args) 
        {
            System.setProperty("webdriver.gecko.driver", "C:/Utility/BrowserDrivers/geckodriver.exe");
            FirefoxOptions options = new FirefoxOptions();
            options.setBinary("C:\\Program Files\\Mozilla Firefox\\firefox.exe");
            WebDriver driver =  new FirefoxDriver(options);
            driver.get("https://stackoverflow.com");
            System.out.println("Page Title is : "+driver.getTitle());
            driver.quit();
        }
    }
    

  • 控制台输出:

  • Console Output:

    Page Title is : Stack Overflow - Where Developers Learn, Share, & Build Careers
    

  • 这篇关于在硒项目中,相对于DesiredCapabilities.firefox()而言,相对于DesiredCapabilities.firefox()而言,如何使用"new FirefoxOptions()"寻址日志信息更为可取.的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

    查看全文
    登录 关闭
    扫码关注1秒登录
    发送“验证码”获取 | 15天全站免登陆