Appium Wdio не запущен = ERROR webdriver: RequestError: connect ECONNREFUSED ::1:4723
Запустите npx wdio и не запускайте, попробуйте еще раз, но я не помог, пожалуйста, всегда помогайте мне с этой проблемой.
Мои кепки
capabilities: [{
platformName: "Android",
"appium:deviceName": "emulator-5554",
"appium:automationName": "UIAutomator2",
"appium:app": join(process.cwd(), "./app/android/Berqnet Connect 3.1.0-1.apk"),
}],
Мои ошибки
ERROR webdriver: RequestError: connect ECONNREFUSED ::1:4723
ERROR @wdio/runner: Error: Failed to create session.
FAILED in Android - C:(MyFiles)\Desktop\wdioDers\test\specs\sample.js
Мой файл sample.js
describe('Sample', () => {
it('Sample Test', () =>{
});
});
4 ответа
Обратите внимание, что ошибка «ECONNREFUSED::1:4723» сообщает об адресе «::1», который является адресом обратной связи для IPv6.
У меня возникла аналогичная проблема после обновления до узла 18 (с узла 16) на CircleCI.
В моем случае ошибка выглядела так:
Невозможно подключиться к «http://localhost:4723/», убедитесь, что по этому адресу запущен драйвер браузера.
..
ОШИБКА веб-драйвера: RequestError: Connect ECONNREFUSED ::1:4723
Разрешение на адрес IPv6::1
и соединение не удается, поскольку сервер (Appium) работает только по адресу IPv4 ().
Проблема вызвана изменением процедуры поиска DNS узла, и, начиная с узла 17, он не разрешает localhost в 127.0.0.1 (адрес IPv4) по умолчанию (вместо этого он разрешается в адрес IPv6::1, что вызывает ошибку соединения):
Node.js больше не сортирует результаты поиска IP-адресов и возвращает их как есть (то есть больше не игнорирует настройки вашей ОС).
Обсуждение здесь: https://github.com/nodejs/node/issues/40702.
В случае нативных тестов webdriver.io он одновременно запускает сервер (Appium) и выступает в роли клиента, пытаясь подключиться к нему черезhttp://localhost:4723
.
Я нашел опцию конфигурации для изменения порта, но не нашел способа настроить адрес сервера Appium (чтобы изменитьlocalhost
к127.0.0.1
). В качестве более простого решения я переключился на Node 20 перед запуском тестов:
nvm install 20
nvm use 20
cd e2e-webdriver
npm run test:ios
Таким образом, тесты выполняются на узле 20, который имеет резервный вариант IPv4, и соединение работает.
Для тех, кто ищет ответы на это решение, если вы работаете в Windows и используете WSL. Если код запускается на WSL при использовании графического интерфейса appium на обычном порту, вы не можете подключиться через него, поэтому вам необходимо:
- Соединение с открытым портом от WSL к порту Windows
- переместите код в windows и запустите его оттуда
Надеюсь, это поможет всем, кто столкнулся с той же проблемой, что и я, и не смог найти проблему!
Я думаю, вам нужно показать полный код «wdio.config.js», чтобы каждый мог помочь вам проверить вашу конфигурацию. Возможно, вы можете проверить значение «services» в файле wdio.config.js. Вы должны установить значение services: " services: ['appium'] " Я надеюсь, что это поможет вам решить вашу проблему.
Ваша проблема в версии node js. Для всех работ вам необходимо установить последнюю версию, рекомендованную для большинства пользователей (не последние последние функции)