相关疑难解决方法(0)

Selenium WebDriver StaleElementReferenceException

运行我的测试时出现此错误:org.openqa.selenium.StaleElementReferenceException:元素不再附加到DOM

关于如何解决上述异常的任何想法?这发生在我的网格中,它有一个动态的ref Xpath表达式

java testing selenium webdriver

25
推荐指数
2
解决办法
4万
查看次数

PageFactory中的StaleElementReference异常

我正在尝试学习PageFactory模型.我理解这样一个事实,当我们这样做时initElements,WebElements就位于其中.比如说,我点击了一个webelement,因此DOM中的其他一个元素发生了变化.现在,显然我会在StaleElementReferenceException这里得到一个.我该如何解决这个问题?

我是否应该再次发现特定的WebElement知道DOM中的WebElement属性可能发生了变化?还是有另一种方法来处理这个问题?

selenium pageobjects selenium-webdriver page-factory staleelementreferenceexception

10
推荐指数
2
解决办法
4670
查看次数

在Selenium Webdriver(Python)中滚动

先决条件。
您需要在Instagram上拥有一个帐户才能使用此脚本。
设置测试环境:

登录,打开所需列表(正常工作):

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from time import sleep

driver = webdriver.Chrome(
# driver = webdriver.Firefox(    
# driver = webdriver.PhantomJS(
    service_args=['--ignore-ssl-errors=true', '--ssl-protocol=any'])

driver.get("https://instagram.com/accounts/login")
username = driver.find_element_by_name("username")
password = driver.find_element_by_name("password")

username1 = 'instagram' # change it!
password1 = 'instagrampassword1' # change it!

username.send_keys(username1)
password.send_keys(password1)

submit_button = driver.find_element_by_css_selector(
    '#react-root > div > article > div > div:nth-child(1) > div > form > span > button')
submit_button.click()

sleep(2)

link = 'https://www.instagram.com/youtube/'
driver.get(link)

driver.implicitly_wait(2)
driver.find_elements_by_class_name("_218yx")[2].click()
Run Code Online (Sandbox Code Playgroud)

滚动错误。如何解决这个问题?

如何在此页面上正确聚焦和滚动? …

python selenium selenium-webdriver

6
推荐指数
1
解决办法
6986
查看次数

Selenium:硒如何识别可见或不可见的元素?是否有可能它已加载到 DOM 中但未渲染到 UI 上?

  1. Selenium:硒如何识别可见或不可见的元素?是否有可能它已加载到 DOM 中但未渲染到 UI 上?我想验证元素可点击的场景,我知道网络驱动器有方法“ElementToBeClickable”,但是,我想知道内部工作原理。请帮我解决这个问题。
  2. 另外,如何处理元素已加载到 DOM 中但 UI 显示正在加载的情况,如何等待完全加载?
  3. 请告诉我,如果UI未加载,那么selenium会直接调用DOM元素,或者如果UI元素正在加载,那么它将执行失败?我真的很感激对此的更多技术解释。

selenium dom selenium-webdriver webdriverwait expected-condition

4
推荐指数
1
解决办法
1万
查看次数

selenium 中的 ChromeDriver 和 WebDriver 有什么区别?

如果我们创建:

ChromeDriver driver=new ChromeDriver();
Run Code Online (Sandbox Code Playgroud)

chrome 驱动程序方法将被执行。

如果我们创建:

WebDriver driver=new ChromeDriver();
Run Code Online (Sandbox Code Playgroud)

再次ChromeDriver执行方法[根据方法覆盖]。

那为什么我们只在执行时写后一个呢?

java selenium webdriver selenium-webdriver webdriver-w3c-spec

0
推荐指数
1
解决办法
1万
查看次数