2017-07-24 22 views
0

我在使用Webdriver測試材質UI popover組件時遇到問題。我想顯示菜單並點擊裏面的元素。如何使用webdriver檢查動畫素材ui popover

public void logOut() 
{ 

    driver.clickOnElementByXpath(USER_MENU_XPATH); 
    driver.clickOnElementByXpath(LOGOUT_BUTTON_XPATH);    
} 

但它會錯過點擊所有的時間,因爲當我想找到退出按鈕,菜單是不是「全開」和元素是不存在的。我想避免在這裏苦苦等待。

請幫助我如何實現這一目標?

+0

東西,你可以等待使用webdriverwait出現註銷然後在其上點擊'明確wait' – Murthi

+0

谷歌是什麼我想避免的。 –

+0

明確等待 – Tommet

回答

0

Selenium Python Bindings做到以下幾點:

首先等待元素和等待它可以點擊與明確的等待。

from selenium.webdriver.support.ui import WebDriverWait 
from selenium.webdriver.support import expected_conditions as EC 


try: 
    element = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, "LOGOUT_BUTTON_XPATH")) 
    ) 
    element = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, 'LOGOUT_BUTTON_XPATH'))) 

finally: 
    element.click() 

做類似