Карма: используйте Windows Chrome от WSL - PullRequest
0 голосов
/ 08 января 2019

Я пытаюсь запустить карму из WSL, используя версию Google Chrome для Windows.

В karma.conf.js я просто использую браузер Chrome:

[...],
browsers: ['Chrome'],
[...]

И я экспортирую переменную среды CHROME_BIN следующим образом:

export CHROME_BIN='/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe'

Карма успешно находит Google Chrome, и при запуске Кармы открывается новая вкладка по правильному URL. Однако я получаю эту ошибку:

Google chrome can't read and write to its data directory /tmp/karma-XXXX

Я попытался запустить Chrome от имени администратора и изменить папку кэша на корень моего проекта, но он не работает.

Я предположил, что возникла проблема с форматом пути, который Карма дает Chrome (путь WSL против пути Windows).

Поэтому я создаю пользовательский модуль запуска кармы с указанием chromeDataDir:

browsers: ['WindowsChrome'],
customLaunchers: {
  WindowsChrome: {
    base: 'Chrome',
    chromeDataDir: 'D:\\'
  }
}

Если у меня нет предыдущей ошибки, запускается новый экземпляр Chrome, но кажется, что Chrome не может разрешить URL-адрес и время ожидания кармы. Более того, внутри моего проекта создано множество папок Chrome.

Кто-нибудь уже заставил карму работать из WSL, используя Chrome, или есть какие-то подсказки о том, что происходит?

1 Ответ

0 голосов
/ 19 мая 2019

Я обнаружил, что если вы создаете папку C: \ tmp \ karma под Windows, эта ошибка исчезает, и Chrome находит и использует эту папку для временных файлов.

Вы также можете изменить временную папку, которую Chrome использует для своих данных, установив переменную среды TEMP следующим образом:

export TEMP='/path/to/your/folder'

Важно то, что папка C: \ path \ to \ your \ должна существовать под Windows.

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