1

Я начинаю с Nighwatch для веб-тестирования и пытаюсь сделать это с Chrome.Chromedriver: невозможно выполнить двоичный файл

Однако, когда я начала теста, он немедленно падает со следующей ошибкой:

17:56:35.218 INFO - Executing: [new session: Capabilities [{acceptSslCerts=true, name=Sandbox, browserName=chrome, javascriptEnabled=true, platform=ANY}]]) 17:56:35.219 INFO - Creating a new session for Capabilities [{acceptSslCerts=true, name=Sandbox, browserName=chrome, javascriptEnabled=true, platform=ANY}] /Users/murdockcrc/repos/nightwatch/bin/chromedriver: /Users/murdockcrc/repos/nightwatch/bin/chromedriver: cannot execute binary file

Я бегу тест с помощью следующей команды: ./bin/nightwatch --test hdv/tests/sandbox.js --config ./nightwatch.json

Насколько я все пути здесь точны и указывают на правильные файлы.

Ниже мой файл конфигурации Nightwatch:

{ 
    "src_folders" : ["./hdv/tests"], 
    "output_folder" : "./hdv/reports", 
    "custom_commands_path" : "", 
    "custom_assertions_path" : "", 
    "globals_path" : "", 
    "live_output" : true, 
    "parallel_process_delay" : 10, 
    "disable_colors": false, 
    "test_workers" : false, 

    "selenium" : { 
    "start_process" : false, 
    "server_path" : "", 
    "log_path" : "", 
    "host" : "127.0.0.1", 
    "port" : 4444, 
    "cli_args" : { 
     "webdriver.chrome.driver" : "./bin/chromedriver", 
     "webdriver.ie.driver" : "", 
     "webdriver.firefox.profile" : "" 
    } 
    }, 

    "test_settings" : { 
    "default" : { 
     "launch_url" : "http://localhost:3000", 
     "selenium_host" : "127.0.0.1", 
     "selenium_port" : 4444, 
     "silent" : true, 
     "disable_colors": false, 
     "screenshots" : { 
     "enabled" : false, 
     "path" : "" 
     }, 
     "desiredCapabilities" : { 
     "browserName" : "chrome", 
     "javascriptEnabled" : true, 
     "acceptSslCerts" : true 
     } 
    } 
    } 
} 

И, наконец, вот тест, который я пытаюсь запустить (как вы можете видеть, просто заполнителем, чтобы увидеть, если он работает на всех):

module.exports = { 
    'Demo test Google' : function (browser) { 
    browser 
     .url('http://www.google.com') 
     .waitForElementVisible('body', 1000) 
     .setValue('input[type=text]', 'nightwatch') 
     .waitForElementVisible('button[name=btnG]', 1000) 
     .click('button[name=btnG]') 
     .pause(1000) 
     .assert.containsText('#main', 'Night Watch') 
     .end(); 
    } 
}; 

Выполнение этого же теста, но с помощью firefox (путем изменения файла nightwatch.json) работает без проблем.

Я был бы признателен за любые указания относительно того, что не так с этой конфигурацией и заставить ее работать в Chrome.

ответ

1

Как проверка работоспособности, вы сами пробовали использовать хромированный реверс (например, «./bin/chromedriver»)? Вы должны получить некоторый вывод, который выглядит как

Начиная ChromeDriver (v2.9.248307) на порт 9515

Вы также должны убедиться, что у вас есть соответствующая версия chromedriver для вашей машины. Проверьте страницу ChromeDriver downloads.

Смежные вопросы