Javascript JS:使用grunt+;摩卡咖啡&x2B;幻影

Javascript JS:使用grunt+;摩卡咖啡&x2B;幻影,javascript,gruntjs,phantomjs,mocha.js,Javascript,Gruntjs,Phantomjs,Mocha.js,我使用yeomanwebapp生成器创建了一个奇特的网站模板。它创建了一个测试文件夹并构建了整个项目,包括一个简单的单元测试。为了尝试phantomjs功能,我添加了一个附加功能: describe("DOM Test", function () { var el = document.createElement("div"); el.id = "myDiv"; el.innerHTML = "Hello World!"; document.body.appen

我使用yeoman
webapp生成器创建了一个奇特的网站模板。它创建了一个测试文件夹并构建了整个项目,包括一个简单的单元测试。为了尝试phantomjs功能,我添加了一个附加功能:

describe("DOM Test", function () {

    var el = document.createElement("div");
    el.id = "myDiv";
    el.innerHTML = "Hello World!";
    document.body.appendChild(el);
    var myEl = document.getElementById('myDiv');

    it("has the right text", function () {
        (myEl.innerHTML).should.equal("Hello World!");
    });
});
但是当我运行
grunt测试时

Running "mocha:test" (mocha) task
Testing: test/index.html

Warning: PhantomJS timed out, possibly due to a missing Mocha run() call. Use --force to continue.

Aborted due to warnings.
Grunfile中我的mocha条目如下所示(它是生成的一个稍微修改的版本。我用通配符替换了url的相对路径):

test/index.html
如下所示:

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>Mocha Spec Runner</title>
    <link rel="stylesheet" href="bower_components/mocha/mocha.css">
</head>
<body>
    <div id="mocha"></div>
    <script src="bower_components/mocha/mocha.js"></script>
    <script>mocha.setup('bdd')</script>
    <script src="bower_components/chai/chai.js"></script>
    <script>
        var assert = chai.assert;
        var expect = chai.expect;
        var should = chai.should();
    </script>

    <!-- include source files here... -->

    <!-- include spec files here... -->
    <script src="spec/test.js"></script>

    <script>
    if (window.mochaPhantomJS) { mochaPhantomJS.run(); }
      else { mocha.run(); }
    </script>
</body>
</html>

摩卡规格跑步鞋
摩卡咖啡设置(“bdd”)
var assert=chai.assert;
var expect=chai.expect;
var-should=chai.should();
if(window.mochaPhantomJS){mochaPhantomJS.run();}
else{mocha.run();}
我尝试了以下几件事(没有成功):

  • 运行bower两次(由建议)
  • 添加了
    grunt.config.set('server.port',7002)
    ()

转到您的测试文件夹并运行
bower install

cd test
bower install
然后再次尝试运行
grunt测试

您有两个bower_components文件夹,一个在root中,一个在test中

cd test
bower install