0
我在模擬手機屏幕上測試,因此屏幕空間非常寶貴。我使用下面的代碼在單擊之前將元素放入視圖中,但是,在點擊操作發生之前,滾動條疊加層不會清除。Selenium Webdriver:滾動條正在進入點擊動作
IJavaScriptExecutor je = (IJavaScriptExecutor)Driver.Instance;
je.ExecuteScript("arguments[0].scrollIntoView(true); window.scrollBy(50, -200);", element);
Thread.Sleep(700);
我可以讓睡眠更長,但這會顯着減慢我的測試。我試過了我能想到的一切,似乎沒有任何工作。
事情我已經試過
初始化chromedriver當禁用滾動條覆蓋。 (沒有刪除滾動覆蓋) chromeOptions.AddArguments("disable-overlay-scrollbar")
使用操作API
Actions btnAction = new Actions(Driver.Instance);
btnAction.MoveToElement(element).Click().Perform();
MoveToElement
也有抵消的說法,但據我所知,這並不影響該元素是如何定位的在窗口中。
有沒有人遇到過這個問題?如果是這樣,你怎麼解決它?
謝謝。
感謝您的答覆之前,請確保該元素是點擊,但我已經試過這一點。我不認爲硒能夠識別滾動條。嘗試等待可點擊時,我仍然遇到同樣的錯誤。 –