Java Google Chrome忽略了功能
我试图用一些参数启动chrome,但它们不会应用…,chrome以默认窗口大小和默认位置启动Java Google Chrome忽略了功能,java,google-chrome,selenium,selenium-webdriver,Java,Google Chrome,Selenium,Selenium Webdriver,我试图用一些参数启动chrome,但它们不会应用…,chrome以默认窗口大小和默认位置启动 private WebDriver webDriver; final ChromeOptions options = new ChromeOptions(); options.addArguments("--user-data-dir=" + configuration.getUserDataDir(),"--window-size=0,0", "--window-positio
private WebDriver webDriver;
final ChromeOptions options = new ChromeOptions();
options.addArguments("--user-data-dir=" + configuration.getUserDataDir(),"--window-size=0,0", "--window-position=-9999,0", "--no-sandbox", "--disable-gpu", "--disable-infobars", "--disable-notifications" );
webDriver = new ChromeDriver(options);
Chrome日志:
{
"capabilities": {
"desiredCapabilities": {
"browserName": "chrome",
"goog:chromeOptions": {
"args": [ "--user-data-dir=C:\\ltb\\userdatadir\\", "--window-size=0,0", "--window-position=-9999,0", "--no-sandbox", "--disable-gpu", "--disable-infobars", "--disable-notifications" ],
"extensions": [ ]
}
},
"firstMatch": [ {
"browserName": "chrome",
"goog:chromeOptions": {
"args": [ "--user-data-dir=C:\\ltb\\userdatadir\\", "--window-size=0,0", "--window-position=-9999,0", "--no-sandbox", "--disable-gpu", "--disable-infobars", "--disable-notifications" ],
"extensions": [ ]
}
} ]
},
"desiredCapabilities": {
"browserName": "chrome",
"goog:chromeOptions": {
"args": [ "--user-data-dir=C:\\ltb\\userdatadir\\", "--window-size=0,0", "--window-position=-9999,0", "--no-sandbox", "--disable-gpu", "--disable-infobars", "--disable-notifications" ],
"extensions": [ ]
}
}
}
整个日志:
我做错了什么
selenium java 3.13.0 chrome v59 chromedriver 2.30我从未使用过
.addArguments()
方法,因此我无法证明它为什么不工作
以下是我使用的方法:
Map<String, Object> options = new HashMap<String, Object>();
ArrayList<String> args = new ArrayList<String>();
args.add("enable-automation");
args.add("test-type=browser");
args.add("disable-plugins");
args.add("disable-infobars");
args.add("window-size=1920x1080");
options.put("args", args);
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
Map options=newhashmap();
ArrayList args=新的ArrayList();
参数添加(“启用自动化”);
参数添加(“测试类型=浏览器”);
args.add(“禁用插件”);
参数添加(“禁用信息栏”);
参数添加(“窗口大小=1920x1080”);
期权。看跌期权(“args”,args);
能力。设置能力(ChromeOptions.CAPABILITY,选项);
还发布了一个关于如何同时加载扩展的链接。看起来它与用户数据目录有问题。我尝试删除用户数据目录,但在更改窗口大小时效果良好:
options.addArguments("--window-size=10,10", "--window-position=-9999,0", "--no-sandbox", "--disable-gpu", "--disable-infobars", "--disable-notifications");
可能您可以使用用户数据目录中的
/
而不是\\
进行检查。另一种可能性是,它可能会从您提供的用户数据目录中的配置文件加载/覆盖设置。而不是options.addArguments(“--user data dir=“+configuration.getUserDataDir()”,“--window size=0,0”,“--window position=-9999,0”,“--no sandbox”,“--disable gpu”,“--disable infobar”,“disable notifications”)代码>您可以尝试:options.AddArgument(“--start maximized”);options.AddArgument(“--ignore certificate errors”);options.AddArgument(“--disable popup blocking”);选项。添加参数(“--incognito”)代码>在没有调用Method.addArgument()的位置可以找到所有兼容性集;仅.addArguments(字符串…参数)和.addArguments(列表参数)没有:)