Sử dụng selen 2, có cách nào để kiểm tra xem một phần tử có cũ không?Kiểm tra phần tử cũ bằng selenium 2?
Giả sử tôi bắt đầu chuyển đổi từ trang này sang trang khác (A -> B). Sau đó tôi chọn phần tử X và kiểm tra nó. Giả sử X yếu tố tồn tại trên cả A và B.
Không liên tục, X được chọn từ A trước khi chuyển trang xảy ra và không được kiểm tra cho đến sau khi chuyển sang B, tăng StaleElementReferenceException. Thật dễ dàng để kiểm tra các điều kiện này:
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()
Nhưng tôi thà làm:
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