我初始化了driver
,如下所示:
ChromeOptions chromeOptions = new ChromeOptions();
System.setProperty("webdriver.chrome.driver", "C:\\chromedriver.exe");
chromeOptions.addArguments("--headless");
driver = new ChromeDriver(chromeOptions);
当我执行测试时,我收到以下消息。
启动ChromeDriver 2.31.488763 (092de99f48a300323ecf8c2a4e2e7cab51de5ba8)在44655港口 允许连接。
org.openqa.selenium.TimeoutException:30秒后超时 等待位于以下位置的元素的存在:By.xpath:
鉴于xpath属于输入字段,单击时会打开文件选择器。它在正常Firefox
中完美运行。
我使用WebDriverWait
等待必要的元素出现。
wait.until(ExpectedConditions.presenceOfElementLocated(mainPage.InputFileField));
答案 0 :(得分:2)
声明--headless参数时,无论“ --start-maximized”参数或 “ driver.manage()window()。maximize();”命令。
如果您的网页在50%响应模式下具有不同的DOM,则找不到无响应模式下的DOM元素。
如果是这样的话:
或者在驱动程序实例化后添加:
this.webDriver.manage()。视窗()。 setSize(new Dimension(1440,900));
对不起,我的英语不好,但是我希望这对您有帮助;)