Предоставление Vagrant box с Chocolatey приводит к тому, что node.exe не может быть найден во время работы webdriver

Я пытаюсь настроить окно Windows 7 Vagrant для запуска тестов.

Я использовал Chocolatey в настройке для установки всех необходимых зависимостей, и все почти готово, но я продолжаю сталкиваться с этой ошибкой при попытке запустить webdriver-manager update, прямо перед последним шагом, который будет запускать сервер Selenium с webdriver-manager start --detach:

(...)
==> tests: Running provisioner: webdriver-update (shell)...
    tests: Running: provisioners/windows/webdriver-update.bat as C:\tmp\vagrant-shell_05.bat
==> tests: C:\Windows\system32>"C:\Users\IEUser\AppData\Roaming\npm\webdriver-manager" update
==> tests: 'node' is not recognized as an internal or external command,
==> tests: operable program or batch file.
The following WinRM command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!

C:\tmp\vagrant-shell_05.bat

Stdout from the command:



Stderr from the command:

Если после завершения инициализации я сделаю удаленное соединение с ВМ, откройте командную строку и запустите webdriver-manager update а также webdriver-manager start будет работать успешно, но во время подготовки проблема всегда возникает.

Извините за вопрос с таким большим количеством кода, но я пытаюсь сделать его как можно более полным: Вот Vagrantfile Я использую для настройки ВМ:

  config.vm.define "tests", autostart: false do |tests|
    tests.vm.box = 'C:/Users/Bruno Finger/Win7-WinRM.box'
    tests.vm.guest = :windows

    tests.vm.provision "chocolatey",
      type: "shell",
      preserve_order: true,
      privileged: true,
      upload_path: "C:/tmp/vagrant-shell_01.ps1",
      path: "provisioners/windows/chocolatey-installer.ps1"

    tests.vm.provision "dependencies",
      type: "shell",
      preserve_order: true,
      privileged: true,
      upload_path: "C:/tmp/vagrant-shell_02.bat",
      path: "provisioners/windows/test-env-dependencies.bat"

    tests.vm.provision "firewall-off",
      type: "shell",
      preserve_order: true,
      run: "always",
      privileged: true,
      upload_path: "C:/tmp/vagrant-shell_03.bat",
      path: "provisioners/windows/windows-firewall-off.bat"

    tests.vm.provision "protractor-installer",
      type: "shell",
      preserve_order: true,
      privileged: true,
      upload_path: "C:/tmp/vagrant-shell_04.bat",
      path: "provisioners/windows/protractor-install.bat"

    tests.vm.provision "webdriver-update",
      type: "shell",
      preserve_order: true,
      privileged: true,
      upload_path: "C:/tmp/vagrant-shell_05.bat",
      path: "provisioners/windows/webdriver-update.bat"

    tests.vm.provision "webdriver-start",
      type: "shell",
      preserve_order: true,
      privileged: true,
      run: "always",
      upload_path: "C:/tmp/vagrant-shell_06.bat",
      path: "provisioners/windows/webdriver-start.bat"

    tests.vm.provision "hosts",
      type: "shell",
      preserve_order: true,
      privileged: true,
      upload_path: "C:/tmp/vagrant-shell_07.ps1",
      path: "provisioners/windows/hosts.ps1"

    tests.vm.communicator = "winrm"
    tests.vm.boot_timeout = 600

    tests.winrm.username = "IEUser"
    tests.winrm.password = "Passw0rd!"

    tests.vm.base_mac = "08002799B15F"

    config.vm.synced_folder ".", "/vagrant", disabled: true
    config.vm.synced_folder "./tests", "/Users/IEUser/DGuardWeb/tests"

    tests.vm.provider :virtualbox do |v|
      v.gui = true

      v.customize ["modifyvm", :id, "--pae", "on"]
      v.customize ["modifyvm", :id, "--memory", 2048]
      v.customize ["modifyvm", :id, "--cpuexecutioncap", "90"]
      v.customize ["modifyvm", :id, "--audio", "none"]
    end
  end

Поставщики указали, один за другим:

шоколадный: (скрипт PowerShell)

(iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1')))>$null 2>&1

C:\ProgramData\chocolatey\bin\RefreshEnv.cmd

зависимости: (партия)

"C:\ProgramData\chocolatey\bin\choco.exe" install -y googlechrome firefox git nodejs.install javaruntime python ruby 7zip selenium-ie-driver

"C:\ProgramData\chocolatey\bin\RefreshEnv.cmd"

отключение брандмауэра: (Пакетно)

"C:\Windows\System32\netsh.exe" advfirewall set allprofiles state off

транспортир-установщик: (партия)

"C:\Program Files\nodejs\npm" install -g protractor

"C:\ProgramData\chocolatey\bin\RefreshEnv.cmd"

Обновление webdriver: (Пакетно) СБОЙ ЗДЕСЬ

"C:\Users\IEUser\AppData\Roaming\npm\webdriver-manager" update

webdriver-start: (Batch) Никогда не заходил , но предполагается, что сервер Selenium запускается в фоновом режиме

"C:\Users\IEUser\AppData\Roaming\npm\webdriver-manager" start --detach

И, наконец, вот полный вывод терминала, когда я запускаю vagrant up tests команда: http://pastebin.com/SEfSiG9h

0 ответов

Другие вопросы по тегам