2016-05-31 29 views
1

使用Python和webdriver--我試圖包裝一個硒調用move_to_element(),所以我可以在一個頁面對象中調用它以用於測試腳本。可能在方法中包裝ActionChains move_to_element()?

例如,我有:

def find_element(self, locatorMode, Locator): 
element = None 
if locatorMode == LocatorMode.ID: 
    element = self.driver.find_element_by_id(Locator) 
elif locatorMode == LocatorMode.NAME: 
    element = self.driver.find_element_by_name(Locator) 
elif locatorMode == LocatorMode.XPATH: 
    element = self.driver.find_element_by_xpath(Locator) 
elif locatorMode == LocatorMode.CSS_SELECTOR: 
    element = self.driver.find_element_by_css_selector(Locator) 
else: 
    raise Exception("Unsupported locator strategy.") 
return element 

def hover_over(self, locatorMode, Locator): 
    self.find_element(locatorMode, Locator).move_to_element() 

它不斷給我一個屬性錯誤。我試圖通過一個變量,沒有運氣。我在這裏錯過了什麼?這個動作鏈操作可能嗎?

回答

0

在從https://stackoverflow.com/a/37576260/5471457

我能得到這個工作的建議:

def hover_over(self, waitTime, locatorMode, Locator): 
    element = self.wait_for_element_visibility(waitTime, locatorMode, Locator) 
    actions = ActionChains(self.driver) 
    actions.move_to_element(element) 
    actions.perform()