whi*_*fin 11 javascript mocha.js node.js
我一直在使用NodeJS和Mocha生成一些测试,我想找到一种方法将结果放入浏览器中.我知道Mocha使用'html'记者支持这个,mocha init <dir>但似乎两个似乎都不适合我(记者实际上甚至没有运行测试就抛出错误).
有人能给我一个通过Mocha运行测试并生成HTML报告的好例子吗?我想模仿的一个例子是在visionmedia网站上.此外,为了举例,我们会说我正在使用一个名为的测试文件example.js.
在此先感谢您的任何帮助,令人惊讶的是,有很少的示例作品.
Pau*_*gel 14
您尝试使用html记者,当您尝试在节点中使用它时抛出:
$ mocha --reporter html > report.html
/usr/local/lib/node_modules/mocha/lib/reporters/html.js:194
, div = document.createElement('div')
^
ReferenceError: document is not defined
Run Code Online (Sandbox Code Playgroud)
根据Mocha文档(以及Github中的相关问题),html记者只能在浏览器中工作,即.在浏览器中测试客户端代码.
如果你想输出HTML的Node.js的测试脚本,使用doc记者,这将产生HTML.
要让Mocha在浏览器和终端中运行测试,请遵循以下小教程:
我假设一个普通的node.js mocha测试套件有以下插件.
以下树形结构:
/root
/test
my_something_spec.js
/javascript
index.html
Run Code Online (Sandbox Code Playgroud)
免责声明:我公然放弃了各种最佳做法,只是为了指出正确的方向.
<html>
<head>
<meta charset="utf-8">
<title>Mocha Tests</title>
<link rel="stylesheet" href="node_modules/mocha/mocha.css" />
</head>
<body>
<div id="mocha"></div>
<script src="node_modules/mocha/mocha.js"></script>
<script>mocha.setup('bdd')</script>
<script src="test/my_something_spec.js"></script>
<script>
mocha.checkLeaks();
mocha.run();
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
describe("my function", function() {
it("is a function", function() {
expect(true).to.be(true);
});
});
Run Code Online (Sandbox Code Playgroud)
使用python -m SimpleHTTPServer 8080来自root 的简单python服务器提供服务并访问localhost:8080将为您提供一个很好的失败测试.从终端运行摩卡将为您提供相同的输出,这expect是未定义的.
| 归档时间: |
|
| 查看次数: |
16767 次 |
| 最近记录: |