1

作为典型 Mocha/Supertest 实现的一部分,您如何对其进行测试?

4

1 回答 1

3

我不知道这有多可靠,但是设置一个虚假的 Twitter 帐户并使用Zombie模拟流程非常容易:

describe('GET /auth/twitter', function(){

    it('should redirect to /account', function(done){
        this.timeout(20e3)
        var zombie = new Zombie()
        zombie.visit(url.resolve(YOUR_HOST, '/auth/twitter'), function(err){
            if (err) throw err
            zombie
                .fill('#username_or_email', 'YOUR_USERNAME')
                .fill('#password', 'YOUR_PASSWORD')
                .pressButton('#allow', function(err){
                    if (err) throw err
                    zombie.clickLink('.maintain-context', function(err){
                        if (err) throw err
                        // Signed in! Do some assertions here.
                        return done()
                    })
                })
        })
    })

})
于 2013-12-08T20:02:25.563 回答