-1
我有一個案例,當我需要找出現在顯示的按鈕。我以這種方式嘗試第一個 {請不要介意我的幫手功能。我認爲,你可以很容易明白,Ui.find_el它幾乎是一樣的driver.find_element_by ....}:如何檢查元素是否在屏幕上
if Ui.find_el(link.AuthorPopupNodes.LOGIN_EMAIL).is_displayed():
pass
else:
if Ui.find_el(link.HeaderNodes.LOGOUT_BUTTON).is_displayed():
self.log_out()
Ui.wait_for_element(link.HeaderNodes.LOGIN_BUTTON, "Timeout: Wait for Login button!")
Ui.click_el(link.HeaderNodes.LOGIN_BUTTON)
但隨後開始下降的錯誤,驅動程序無法找到的元素,所以我蓋它通過嘗試,但它不適合我。
try:
if Ui.find_el(link.AuthorPopupNodes.LOGIN_EMAIL).is_displayed():
pass
else:
if Ui.find_el(link.HeaderNodes.LOGOUT_BUTTON).is_displayed():
self.log_out()
Ui.wait_for_element(link.HeaderNodes.LOGIN_BUTTON, "Timeout: Wait for Login button!")
Ui.click_el(link.HeaderNodes.LOGIN_BUTTON)
except:
pass
例如,如果第一個IF失敗,它會從try中跳出來,我需要檢查是否有LOGOUT按鈕。是否有可能檢查元素沒有嘗試,但也沒有硒錯誤?
謝謝!現在我明白我需要像IF一樣使用try。 – Michael 2014-10-22 20:47:22