Ошибка mocha-phantomjs при загрузке ресурса mocha.js

Я пытаюсь запустить mocha-phantomjs и получаю эту ошибку:

$ npm run test-phantom

> [email protected] test-phantom /path/to/project/
> mocha-phantomjs test/client.html

Error loading resource file:///path/to/project//test/mocha.css (203). Details: Error opening /path/to/project//test/mocha.css: No such file or directory
Error loading resource file:///path/to/project//test/mocha.js (203). Details: Error opening /path/to/project//test/mocha.js: No such file or directory
Error loading resource file:///path/to/project//test/chai.js (203). Details: Error opening /path/to/project//test/chai.js: No such file or directory
TypeError: 'undefined' is not a function (evaluating 'mocha.ui('bdd')')

  file:///path/to/project//test/client.html:11

npm ERR! Linux 3.16.3-1-ARCH
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "run" "test-phantom"
npm ERR! node v0.10.32
npm ERR! npm  v2.1.1
npm ERR! code ELIFECYCLE
npm ERR! [email protected] test-phantom: `mocha-phantomjs test/client.html`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] test-phantom script.
npm ERR! This is most likely a problem with the selenium-test package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     mocha-phantomjs test/client.html
npm ERR! You can get their info via:
npm ERR!     npm owner ls selenium-test
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /path/to/project/npm-debug.log

Файл test/client.html таков:

<html>
  <head>
    <meta charset="utf-8">
    <link rel="stylesheet" href="mocha.css" />
  </head>
  <body>
    <div id="mocha"></div>
    <script src="mocha.js"></script>
    <script src="chai.js"></script>
    <script>
      mocha.ui('bdd');
      mocha.reporter('html');
      assert = chai.assert;
    </script>
    <script>
      if (window.mochaPhantomJS) { mochaPhantomJS.run(); }
      else { mocha.run(); }
    </script>
  </body>
</html>

Что в значительной степени является примером из README. Я вижу 3 возможных решения этого

  • запустить локальный веб-сервер для предоставления ресурсов мокко и чая
  • как-нибудь скажите phantomjs искать в node_modules ресурсы, которые я прошу
  • Жестко закодируйте пути ресурсов на тестовой странице, которые я нахожу немного уродливыми.

Я, наверное, что-то неправильно понимаю в этом...


person fakedrake    schedule 30.09.2014    source источник


Ответы (1)


Это не так уж уродливо, чтобы просто сделать:

<link rel="stylesheet" href="../node_modules/mocha/mocha.css">
...
<script src="../node_modules/mocha/mocha.js"></script>
<script src="../node_modules/chai/chai.js"></script>
person Brandon Horst    schedule 11.12.2014
comment
В итоге я запустил локальный сервер, который хорошо подходит по другим причинам, но ваше решение — лучшее, что я могу придумать, если бы я избегал локального сервера, поэтому я принимаю его. - person fakedrake; 12.12.2014