セレン2を使用して、要素が古くなっているかどうかをテストする方法はありますか?セレン2を使って古くなった要素をチェックしますか?
ページ間の遷移を開始するとします(A→B)。次に、要素Xを選択してテストします。要素XがAとBの両方に存在するとします。
Xはページ遷移が起こる前にAから選択され、Bに移動してStaleElementReferenceExceptionを発生するまでテストされません。
try:
visit_B()
element = driver.find_element_by_id('X') # Whoops, we're still on A
element.click()
except StaleElementReferenceException:
element = driver.find_element_by_id('X') # Now we're on B
element.click()
しかし、私はむしろやるだろう:それは、この条件をチェックするのは簡単です
element = driver.find_element_by_id('X') # Get the elment on A
visit_B()
WebDriverWait(element, 2).until(lambda element: is_stale(element))
element = driver.find_element_by_id('X') # Get element on B