我如何单元测试我的JavaScript代码的方式,允许它在一个网站上使用?



我已经建立了一个web应用程序,我正试图建立一个自动化的单元测试套件,以便我可以更容易地重构代码。

我有javascript代码,在我的网站上正确运行。简单的假设代码:

function timesTwo(x){x*=2;return x}

如果我正在为NodeJS编写代码,我会添加测试以确认代码是否正常工作。下面是一个使用Wish和Mocha的例子:

describe('timesTwo()', function() {
it('multiplies by two', function() {
var result = timesTwo(5);
wish(result === 10);
});
});

如果我在node.JS中运行它来测试它,那么这段代码(包括测试)可以正常工作,但是现在它在我的浏览器中抛出错误:

require is not defined
describe is not defined
wish is not defined

我如何为我的代码创建一个自动化的测试套件,而不会在浏览器中抛出错误?

如果我没弄错的话,您还将测试代码加载到浏览器中。

问题是require不是在浏览器中可用的东西。这意味着像describewish这样的函数根本不可用,因为require没有包含任何代码。

你应该做的是将测试与应用程序代码分开,只将应用程序代码加载到你的网站中。如何做到这一点取决于你的构建系统,模板引擎等

最新更新