Node.js 如何使用mocha phantomjs测试Node js应用程序
我需要用mocha phantomjs测试我的Node js应用程序。我尝试了下面的代码来测试这个应用程序,但我得到的错误是“ReferenceError:找不到变量:require”。如何解决这个问题 test.htmlNode.js 如何使用mocha phantomjs测试Node js应用程序,node.js,phantomjs,mocha.js,chai,Node.js,Phantomjs,Mocha.js,Chai,我需要用mocha phantomjs测试我的Node js应用程序。我尝试了下面的代码来测试这个应用程序,但我得到的错误是“ReferenceError:找不到变量:require”。如何解决这个问题 test.html <html> <head> <title> Tests </title> <link rel="stylesheet" href="./node_modules/mocha/mocha.css" />
<html>
<head>
<title> 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 src="../node_modules/should/lib/should.js"></script>
<script>
mocha.ui('bdd');
mocha.reporter('html');
</script>
<script src="test.js"></script>
<script>
if (window.mochaPhantomJS) { mochaPhantomJS.run(); }
else { mocha.run(); }
</script>
</body>
</html>
当以mocha phantomjs test/test.html运行html文件时,我得到的错误如下
ReferenceError: Can't find variable: require
看看browserify,它使您能够自动包含npm库:
还建议在开发中使用connect browserify进行自动重新加载,在生产中使用asset rack进行自动绑定。因此,我认为您的问题在于,通过测试运行程序运行测试基本上就像在客户端运行测试一样。因此,它将无法找到本机节点模块(如require)。您可以尝试直接加载。或者,只是使用
<script src="../node_modules/chai/chai.js"></script>
<script>
mocha.ui('bdd');
mocha.reporter('html');
var should = chai.should; // This will give you access to chai should.
</script>
mocha.ui(“bdd”);
mocha.reporter('html');
var should=chai.should;//这将使您能够访问柴应。
因此,您不需要任何您需要src的东西。再一次,把这当作你在客户端做的每件事 浏览器的API中没有require,phantomjs和mocha phantomjs不会为您介绍它。
<script src="../node_modules/chai/chai.js"></script>
<script>
mocha.ui('bdd');
mocha.reporter('html');
var should = chai.should; // This will give you access to chai should.
</script>