没有来自mocha-phantomjs

时间:2016-01-28 16:43:39

标签: javascript unit-testing mocha-phantomjs

我无法从命令行获取最简单的mocha-phantomjs测试以在Windows上运行。它似乎运行javascript - 因为我可以看到console.log的一些输出,但我没有看到任何测试输出。

我在以下软件包上做了npm install

  • mocha-phantomjs(4.0.2)
  • phantomjs(2.1.3)
  • mocha(2.4.4)
  • chai(3.5.0)

测试\牛test.js

console.log("fred1");

describe("OnePlusFour", function() {
  it("should be able to add two numbers", function() {
    chai = require('chai');
    var expect = chai.expect;

    var first = 1;
    var second = 4;
    expect(first + second).to.equal(5);
  });
});

console.log("fred2");

cow.html

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>Cow tests</title>
  <link rel="stylesheet" media="all" href="./node_modules/mocha/mocha.css">
</head>
<body>
  <div id="mocha"></div>

  <script src="./node_modules/mocha/mocha.js"></script>
  <script src="./node_modules/chai/chai.js"></script>

  <script>
    mocha.setup('bdd');
  </script>

  <script src="test/cow-test.js"></script>

  <script>
      mocha.run();
  </script>
</body>
</html>

当我在javascript文件上运行mocha时,我得到了正确的测试输出:

D:\Sandbox\GummyBear>mocha test\cow-test.js
fred1
fred2


  OnePlusFour
    √ should be able to add two numbers


  1 passing (10ms)

耶!但是当我在HTML文件上运行mocha-phantomjs时,我只得到控制台输出而没有测试:

D:\Sandbox\GummyBear>mocha-phantomjs cow.html
fred1
fred2

^CTerminate batch job (Y/N)? y

我必须使用Ctrl + Break来终止它,否则它将永远留在那里。嘘声。

我做错了什么?

顺便说一下BTW最终我想用gulp来解决这个问题。我使用MVC Boilerplate模板创建了一个带有ASP.NET Core,bower和gulp等的项目结构,但我陷入了javascript单元测试阶段(gulp-mocha-phantomjs给出了错误&#34; mocha未找到页面加载10000ms内的页面。&#34;)。所以为了解决这个问题,我想先了解一下JS单元测试的基础知识。

0 个答案:

没有答案