0

最近、node.js と Express、mongodb、ejs などのパッケージを紹介されました。いくつか質問があります:

学習目的として、express、mongodb、および ejs を使用するユーザー管理の github リポジトリを作成しました。routes/users.jsファイルにすべての機能があります。これらすべての関数のテスト ケースを作成する必要があります。この例でテスト駆動型プログラミングを作成するにはどうすればよいですか?

ファイル内の私のルートで。app.js

app.get('/login', user.login);
app.post('/login', user.loginSubmit);

ログインページのレンダリングや送信などにさまざまなルートを記述する必要があります。 ajax リクエストもある場合app.js、1 つのページのルートを考慮すると、ファイルに多くのルートがあります。それはそのようなものですか、それとも私の構造を変更する必要がありますか?

4

1 に答える 1

1

Mochaをお勧めします。expressjs の同じ人からのものです。コードのテスト カバレッジ、前、後、それぞれのフックをサポートし、もちろん非同期コードもサポートします。

should.js または chai.js と組み合わせて使用​​します

モカでのテストは次のようになります。コードは、リクエストを行うためにスーパーエージェントを使用している自分のテストからのものです。

it('requests a permission with valid ticket', function (done){
        agent
            .post(route.server + '/preq')
            .set('Content-Type', 'application/json')
            .set('Authorization', 'Bearer ' + ACCESSTOKEN)
            .send({ticket: TICKET})
            .end(function (req,res) {

                res.should.have.property('statusCode').that.equals(201);
                var location = .....
                res.headers.should.have.property('location').that.is.equal(location);
                done();
            });
    })
于 2013-03-21T09:02:25.447 に答える