mocha-phantomjsを実行しようとすると、次のエラーが発生します。
$ npm run test-phantom
> selenium-test@0.0.5 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! selenium-test@0.0.5 test-phantom: `mocha-phantomjs test/client.html`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the selenium-test@0.0.5 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つの可能な解決策があります
- mocha と chai のリソースを提供するローカル Web サーバーを実行する
node_modules
どういうわけか、求めるリソースを調べるようにphantomjsに指示します- テストページのリソースのパスをハードコーディングしますが、これは少し見にくいと思います
私はおそらくこれについて何か間違っていると思います...