node.js — правильно загружает драйвер zombie js для Mink и Stack Overflow

Мне удалось установить node.js v0.12.2 и npm 2.7.4 на Centos 6.

В каталоге /usr/local/lib/node_modules Теперь у меня есть два каталога, которые создаются автоматически:

НПМ

живой мертвец

Поэтому я использовал команду Linux export PATH_NODE="/usr/local/lib/node_modules", но всякий раз, когда я запускаю приведенный ниже скрипт, я получаю следующую ошибку:

Fatal error: Uncaught exception 'RuntimeException' with message 'Server process has been terminated: (8) [ module.js:340 throw err; ^ Error: Cannot find module 'zombie' at Function.Module._resolveFilename (module.js:338:15) at Function.Module._load (module.js:280:25) at Module.require (module.js:364:17) at require (module.js:380:17) at Object.<anonymous> (/tmp/mink_nodejs_serverddCfA0:2:16) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Function.Module.runMain (module.js:497:10) ]' in /home/birdsnest/public_html/test/vendor/behat/mink-zombie-driver/src/Behat/Mink/Driver/NodeJS/Server.php:406 Stack trace: #0 /home/birdsnest/public_html/test/vendor/behat/mink-zombie-driver/src/Behat/Mink/Driver/NodeJS/Server.php(302): Behat\Mink\Driver\NodeJS\Server->checkAvailability() #1

сценарий:

<?php
require_once 'vendor/autoload.php';$driver = new \Behat\Mink\Driver\ZombieDriver(
new \Behat\Mink\Driver\NodeJS\Server\ZombieServer()
);

// init session:
$session = new \Behat\Mink\Session($driver);

// start session:
$session->start();

// open some page in browser:
$session->visit('website');

// get the current page URL:
echo $session->getCurrentUrl();

// get the response status code:
echo $session->getStatusCode();

// get page content:
//echo $session->getPage()->getContent();

// evaluate JS expression:
echo $session->evaluateScript(
"return 'something from browser';");

?>

Я провел много исследований и попробовал много возможных решений, но все еще не мог заставить это работать. Любая помощь будет оценена 🙂

Обновить:

При входе в каталог: /vendor/behat/mink-zombie-driver/src/Behat/Mink/Driver/NodeJS/Server.php

в строке 81 файла Server.php я обновил $nodeModulesPath = '/usr/local/lib/node_modules/'

Но ошибка тогда:

Fatal error: Uncaught exception 'RuntimeException' with message 'Server process has been terminated: (8) [ /usr/local/lib/node_modules/zombie/node_modules/jsdom/node_modules/contextify/node_modules/bindings/bindings.js:83 throw e ^ Error: /usr/local/lib/node_modules/zombie/node_modules/jsdom/node_modules/contextify/build/Release/contextify.node: undefined symbol: node_module_register at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Module.require (module.js:364:17) at require (module.js:380:17) at bindings (/usr/local/lib/node_modules/zombie/node_modules/jsdom/node_modules/contextify/node_modules/bindings/bindings.js:76:44) at Object.<anonymous> (/usr/local/lib/node_modules/zombie/node_modules/jsdom/node_modules/contextify/lib/contextify.js:1:96) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Module.requ in /home/birdsnest/public_html/test/vendor/behat/mink-zombie-driver/src/Behat/Mink/Driver/NodeJS/Server.php on line 406

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …