摩卡和ZombieJS

Joe*_*oel 20 bdd mocha.js node.js zombie.js

我正在开始一个nodejs项目,并希望用Mocha和Zombiejs做BDD.不幸的是,我对这句话中的每一个流行词都不熟悉.我可以让Mocha和Zombiejs运行测试很好,但我似乎无法整合两者 - 是否有可能使用Mocha来运行Zombiejs测试,如果是这样,那将是什么样子?

只是寻找"你好世界"让我开始,但教程/例子会更好.

谢谢!

Ind*_*ial 36

假设您已经安装mocha,zombieexpect.js根据说明,这应该适合您:

// Put below in a file in your *test* folder, ie: test/sampletest.js:

var expect = require('expect.js'),
Browser = require('zombie'),
browser = new Browser();

describe('Loads pages', function(){

    it('Google.com', function(done){

        browser.visit("http://www.google.com", function () {
            expect(browser.text("title")).to.equal('Google');
            done();
        });
    });

});
Run Code Online (Sandbox Code Playgroud)

然后,您应该能够mocha从根应用程序文件夹运行该命令:

# mocha -R spec

  Loads pages
    ? Google.com (873ms)


  ? 1 tests complete (876ms)
Run Code Online (Sandbox Code Playgroud)

注意:如果测试由于超时而导致失败,则mocha通过使用-t参数有助于增加超时设置.查看mocha的文档以获取完整的详细信息.

  • 请注意,问题似乎已得到解决! (4认同)

Fra*_*tto 7

我写了一个冗长的回答这个问题,解释了关于异步测试,良好实践('before()','after()',TDD,...)的重要问题,并通过一个真实的例子进行了说明.

http://redotheweb.com/2013/01/15/functional-testing-for-nodejs-using-mocha-and-zombie-js.html