«Произошла неизвестная ошибка на стороне сервера при обработке команды» Ошибка при использовании ActionChains () в селене - PullRequest
0 голосов
/ 19 июня 2020

Я получаю эту ошибку при использовании цепочек действий в селене. Я пытался удалить части цепи, чтобы упростить их, но ничего из того, что я пробовал, не помогло. Кстати, я запускаю этот код на мобильном симуляторе iOS с помощью TestingBot. В инструкциях о сне я просто пытался решить проблему

 selenium.common.exceptions.WebDriverException: Message: An unknown 
 server-side error occurred while processing the command. Original 
 error: 
 Error Domain=com.facebook.WebDriverAgent Code=1 "Unsupported origin 
 type '{
       ELEMENT = 5011;
       "element-6066-11e4-a52e-4f735466cecf" = 5011;
   }' is set for '{
       duration = 250;
       origin =     {
           ELEMENT = 5011;
           "element-6066-11e4-a52e-4f735466cecf" = 5011;
       };
       type = pointerMove;
       x = 0;
       y = 0;
   }' action item. Supported origin types: (
       pointer,
       viewport
   ) or an element instance" UserInfo={NSLocalizedDescription=Unsupported origin type '{
       ELEMENT = 5011;
       "element-6066-11e4-a52e-4f735466cecf" = 5011;
   }' is set for '{
       duration = 250;
       origin =     {
           ELEMENT = 5011;
           "element-6066-11e4-a52e-4f735466cecf" = 5011;
       };
       type = pointerMove;
       x = 0;
       y = 0;
   }' action item. Supported origin types: (
       pointer,
        viewport
    ) or an element instance}

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- 
packages/selenium/webdriver/remote/errorhandler.py:242: WebDriverException

Вот мой код:

def closeWidget(self, driver, log, isMobile):
    driver.find_element_by_xpath("//div[contains(@class, 'handle')]").click()

    if isMobile == True:
        driver.implicitly_wait(10)
        builder = ActionChains(driver)
        sleep(4)
        handle = driver.find_element(By.XPATH, "//div[contains(@class, 'handle')]/div")
        sleep(4)
        builder.click_and_hold(handle)
        builder.pause(4)
        builder.move_by_offset(0, 1)
        builder.release()
        builder.perform()
        log.info("Reached here")

    else:
        driver.find_element_by_xpath("//*[name()='svg']").click()
    for i in range(3):
        self.scrollRandom(driver, 500, 2000)
        sleep(2)
    try:
        driver.find_element_by_xpath("//div[contains(@class, 'widget')]/div/div/div[contains(text(), ' ' )]")
    except:
        return True
    return False
...