#cypress
#cypress
Вопрос:
У меня установлен Cypress 5.0 и есть все браузеры — Chrome, Edge и FF. Когда я запускаю
> npx cypress open
Не удается увидеть все браузеры в правом верхнем углу. Отображается только Electron
Я пытался
> npx cypress open --browser chrome
Я получаю следующую ошибку
Can't run because you've entered an invalid browser name.
Browser: 'chrome' was not found on your system or is not supported by Cypress.
Cypress supports the following browsers:
- chrome
- chromium
- edge
- electron
- firefox (Cypress support in beta)
You can also use a custom browser: https://on.cypress.io/customize-browsers
Available browsers found on your system are:
- electron
Я также пытался
> npx cypress open --browser C:Program Files (x86)GoogleChromeApplicationchrome.exe
Cypress показывает ошибку — мы не смогли определить известный браузер по указанному вами пути
На другой моей машине я могу видеть все браузеры с самого начала.
Любая помощь будет оценена
Комментарии:
1. Та же проблема при запуске в CI с изображением docker
Ответ №1:
Я столкнулся с аналогичной проблемой в своей организации, и символическая ссылка помогла мне справиться с этим. В моем сценарии браузер Chrome не был установлен в папке по умолчанию, в которой cypress ищет Chrome.exe (‘C:/Program Файлы (x86)/Google/Chrome/Application/chrome.exe ‘,’C:/Program Files/Google/Chrome/Application/chrome.exe ‘)
Когда я попробовал приведенную ниже команду с моим установленным Chrome brower path:
npx cypress open --browser "C:Program Files (x86)GoogleChromeApplicationchrome.exe"
Сбой с ошибкой, которая не может найти браузер по адресу «C:Program «. Кажется, что он разделяет путь —browser ПРОБЕЛОМ и не может идентифицировать браузер Chrome.
Итак, я создал символическую ссылку в папке по умолчанию, где cypress по умолчанию ищет браузер Chrome.
C:mklink /J "C:Program FilesGoogleChromeApplication" "C:Program Files Google Chrome (Local)"
После завершения символьной ссылки я вижу новый путь «C:Program Files Google Chrome Application» приводит меня к chrome.exe . Теперь я могу запустить команду cypess open без тега браузера и должен увидеть браузер Chrome, добавленный в раскрывающемся списке браузера.
npx cypress open
Примечание:
- Запустите cmd от имени администратора
- Убедитесь, что «C:Program Папка «Files Google Chrome» существует до запуска команды символической ссылки
Комментарии:
1. Символическая ссылка — хорошая идея. Пример Powershell
New-Item -ItemType SymbolicLink -Path "C:Program FilesGoogleChrome" -Target "C:Users<user>AppDataLocalGoogleChrome"
Ответ №2:
Столкнулся с точно таким же сообщением об ошибке. Это потому, что на образе docker не установлен ни один из этих браузеров.
Я решил эту проблему, просто установив Chrome на изображение, которое я использовал, с помощью этих команд
RUN wget -q https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
RUN apt-get install -y ./google-chrome-stable_current_amd64.deb
вы также могли бы потенциально связать свое приложение Chrome с вашим контейнером, используя тома docker, но я решил, что версия Chrome для Windows не будет хорошо воспроизводиться в образе Linux.
Ответ №3:
у меня это работало в окне, выполнив следующие шаги-
- Очистите все содержимое, как указано в —https://github.com/cypress-io/cypress/issues/2834#issuecomment-441956393
- Закройте приложение Cypress и VS code одновременно.
- Добавьте следующую запись в переменную «PATH»- C:WindowsSystem32wbem
- Удалите и установите Chrome снова.
- Откройте VS Code и откройте приложение Cypress. теперь вы можете увидеть Chrome.
Ответ №4:
У меня была такая же проблема с Дженкинсом, и я решил ее, просто добавив C:\Windows\System32\wbem
в свой PATH
скрипт в конвейере (в withEnv
разделе).
Ответ №5:
У меня была такая же проблема с Cypress 7.1.0. Cypress показывает только Edge. Я удалил данные приложения, описанные здесь. После переустановки Google Chrome Cypress показывает как Chrome, так и Edge.