Сбой настройки тестирования настольных приложений Robotframework - PullRequest
0 голосов
/ 23 октября 2018

Я хочу проверить настольное электронное приложение с помощью роботизированной системы.Я скачал Selenium2Library и увидел в интернете статью об этом.Я создаю vars.py для переменной с таким текстом:

"chromeOptions": {
                   "binary": "/Users/amar/Downloads/name-of-application-staging.app/Contents/MacOS/name-of-application-staging",
                    "args": ["--headless", "--no-sandbox"]
               }

и test.robot:

*** Settings ***
Library    Selenium2Library
Variables    vars.py

*** Test Cases ***
Foo
  Create Webdriver    Remote    desired_capabilities=${binary_location}    command_executor=http://localhost:9515
  click element  hehe_element

Сначала я запускаю chromedriver, затем иду в каталог, где находится test.robot,затем я набираю:

robot test.robot

и приложение для настольного компьютера запускается, и примерно через 30 секунд я получаю эту ошибку:

WebDriverException: Message: unknown error: DevToolsActivePort file doesn't exist
(Driver info: chromedriver=2.43.600229 (3fae4d0cda5334b4f533bede5a4787f7b832d052), platform=Mac OS X 10.13.6 x86_64)

Второе ключевое слово "Click element" никогда не запускается.Я использую macOS.

Версия chrome: Version 70.0.3538.67 (Official Build) (64-bit)

Версия chromedriver: ChromeDriver 2.43

После попытки запуска через .py я получаю эту ошибку:Трассировка (последний вызов был последним): файл «start_application.py», строка 11, в файле browser = webdriver.Chrome (options = chrome_options) «/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages / selenium / webdriver / chrome / webdriver.py ", строка 81, в init wanted_capabilities = требуемые_capabilities) Файл" /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/selenium/webdriver/remote/webdriver.py ", строка 157, в init self.start_session (возможности, browser_profile) Файл" /Library/Frameworks/Python.framework/Versions/3.7/lib / python3.7 / site-packages / selenium / webdriver / remote / webdriver.py ", строка 252, в файле start_session response = self.execute (Command.NEW_SESSION, параметры) Файл" /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/selenium/webdriver / remote / webdriver.py ", строка 321, в исполняемом файле self.error_handler.check_response (response)" /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/selenium/webdriver/remote/errorhandler.py ", строка 242, в check_response поднять исключение_класса (сообщение, экран, трассировка стека) selenium.common.exceptions.WebDriverException: Сообщение: неизвестная ошибка: файл DevToolsActivePort не существует (Информация о драйвере: chromedriver = 2.40.565386(45a059dc425e08165f9a10324bd1380cc13ca363), платформа = Mac OS X 10.13.6 x86_64)

1 Ответ

0 голосов
/ 23 октября 2018

Попробуйте следующий код, пожалуйста:

def build_chrome_options():
    chrome_options = webdriver.ChromeOptions()
    chrome_options.add_argument("--no-sandbox")
    chrome_options.add_argument("--headless")
    chromeOptions.binary_location='/Users/amar/Downloads/name-of-application-staging.app/Contents/MacOS/name-of-application-staging'

    return chrome_options 

Если этот код не решил вашу проблему, пожалуйста, посмотрите эту проблему с здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...