2013-04-15 3 views
21

Я пытаюсь использовать Karma для тестирования моих js-скриптов. В документе он говорит, что я должен установить переменные окружения для CHROME_BIN:Настройка переменной среды для CHROME_BIN не работает

Я поставил его в

% ProgramFiles (x86)% "\ Google \ Chrome \ Application \ chrome.exe

, но когда я типа %CHROME_BIN% в DOS, она не как это обрезается до C:\Program пространства в Program Files.

что я могу сделать, чтобы обойти эту проблему?

ответ

31

сталкивается с таким же вопросом и Я решил это, отредактировав karma.conf.js и karma-e2e.conf.js файлы под Конфигурация.

Изменение:

browsers = ['Chrome']; 

К

browsers = ['Your_System_Path_where_chrome_installed/chrome.exe']; 

в моем случае это был>C:/Program Files (x86)/Google/Chrome/Application/chrome.exe

, а затем добавить C:\Program Files (x86)\Google\Chrome\Application\chrome.exe путь к переменным среды


или в ЦМД

SET CHROME_BIN = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" 

Дополнительная: Настройки для других браузеров можно увидеть here.

И о том, почему хром один не работает Я предполагаю, что они (Карма) настроили свой хромовый путь из некоторых более ранних версий хром.


Обновление: Для AngularJS tutorial Читает:

  • Вы все еще можете столкнуться с проблемами (как я столкнулся) во время бега кармы теста бегун на некоторых учебных шагах и решить эту проблему: просто добавить их «Зависимости углового сценария» как в «... conf.JS "файлы, как это:
files = [ 
    ANGULAR_SCENARIO, 
    ANGULAR_SCENARIO_ADAPTER, 
    .... 
    .... // keep rest of the lines as it is 
    .... 
]; 
+0

nice one , Я попробую! – Sam

+1

это исправление моей проблемы с 'CHROME_BIN' не было установлено – pbojinov

+1

, следуя руководству angularJS, не удалось заставить его работать с переменными env, а также не устанавливать путь к chrome непосредственно в файлы конфиг karma. То, что сработало вместо этого, использует стандартные CMD-окна и делает SET CHROME_BIN = C: \ Program Files (x86) \ Google \ Chrome \ Application \ chrome.exe Я предполагаю, что это редактирует переменную env, но по какой-то причине она не работает с переменными env по умолчанию в компьютере -> расширенными настройками системы. Обратите внимание, что моя карма полностью игнорирует то, что я настраиваю в файлах conf, прямо сейчас указано браузеры = ['PhantomJS']; и он запускается на chrome – Rayjax

0

Использование set (см http://ss64.com/nt/set.html) и поместить в кавычках всей строки

"% ProgramFiles (x86)% \ Google \ Chrome \ Application \ chrome.exe"

+0

Это сводит меня с ума. Я пробовал все, и я все еще не могу заставить его работать. Я даже пытался использовать powershell: [System.Environment] :: SetEnvironmentVariable («CHROME_BIN», «C: \ Program Files (x86) \ Google \ Chrome \ Application \ chrome.exe»), но не повезло. Любая идея, что еще я могу попробовать? – Sam

+0

@Sam иногда эти икоты, связанные с неадминистрационным режимом, убедитесь, что вы задали переменную как _admin_ –

+0

Я определенно администратор на своем компьютере (я пробовал как на своем рабочем компьютере, так и на моем персональном компьютере, такую ​​же проблему) – Sam

6

В Powershell вы можете запустить следующую команду:

$Env:CHROME_BIN = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" 

Вы должны заменить материал в двойных кавычках с вашим местным путь.

или в cmd.exe

SET CHROME_BIN = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" 

Это все, что вам нужно, чтобы это произошло.

+3

Я думаю, что важно отметить, что, по крайней мере, при работе с cmd требуется перезагрузка cmd для работы. Без перезагрузки после команды SET CHROME_BIN он все равно не распознает это. После перезагрузки все в порядке. – Rob

+0

Thats @RobertJagoda ** Restart ** был очень важен! Я потратил столько времени, пытаясь понять, как это работает. И тогда я увидел ваш комментарий! –

+0

Lifesaver. Это сработало для меня –

5

я решил такую ​​же проблему, установив CHROME_BIN в моих свойствах среды, как это:

c:/Program Files (x86)/Google/Chrome/Application/chrome.exe 

Там есть не должно быть никаких двойных кавычек (") вокруг стоимости имущества и всех обратной косой знаки (\) должны заменить слэш знаками (/)

1

Я обнаружил, что установка Canary и изменение browsers = ['Chrome']; к browsers = ['ChromeCanary']; симпатичнее.

+0

Ницца, это определенно проще. –

1

для Chromium в Ubuntu 14,04 редактировать тест/karma.conf.js и изменить

browsers = ['Chrome']; 

для

browsers = ['chromium-browser']; 
1

Я решил проблему, запустив из командной строки администратора. Не нужно устанавливать CHROME_BIN, и он автоматически укажет на вашу установку по умолчанию.

0

(В Linux) Я думал, что это связано с CHROME_BIN, но в конце для меня это не имело ничего общего с этой переменной, и я удалил его. Мне нужно было найти плагин npm karma-chrome-launcher на github и следовать инструкциям по добавлению безопасности в конфигурацию кармы.

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