SORU
1 Mart 2012, PERŞEMBE


Nasıl bir birim İfade ile yolları test ediyor?

Öğrenme Node.js sürecinde olduğumu ve çevresinde Express ile oynuyor. Gerçekten çerçeve gibi;ancak, sorun bir güzergah için bir birim/entegrasyon test yazmak için nasıl sergiyi yaşıyorum.

Yapabilir birim test basit modüller kolay ve neler yaptınız o Mocha; ancak, benim birim testleri ile İfade başarısız beri response nesnesi ben geçerken değil korumak değerleri.

Rota-Fonksiyon Testi (routes/index.js Altında:

exports.index = function(req, res){
  res.render('index', { title: 'Express' })
};

Birim Test Modülü:

var should = require("should")
    , routes = require("../routes");

var request = {};
var response = {
    viewName: ""
    , data : {}
    , render: function(view, viewData) {
        viewName = view;
        data = viewData;
    }
};

describe("Routing", function(){
    describe("Default Route", function(){
        it("should provide the a title and the index view name", function(){
        routes.index(request, response);
        response.viewName.should.equal("index");
        });

    });
});

Ben bu çalıştırmak için başarısız "Hata: saptanan küresel sızıntı:,". viewName veri

  1. Bu çalışma alabileyim diye yanlış mı gidiyorum?

  2. Beni bu seviyede benim kod birim test etmek için daha iyi bir yolu var mı?

Güncelleme 1. Ben başlangıçta unuttu beri kod parçacığını düzeltilmiş" ()".

CEVAP
1 Mart 2012, PERŞEMBE


Express ile HTTP test etmek için en kolay yolu TJ's http helper çalmak için

11**

it("should do something", function (done) {
    request(app())
    .get('/session/new')
    .expect('GET', done)
})

Özellikle yollar nesne test etmek istiyorsanız, o zaman doğru alay geçmek

describe("Default Route", function(){
    it("should provide the a title and the index view name", function(done){
        routes.index({}, {
            render: function (viewName) {
                viewName.should.equal("index")
                done()
            }
        })
    })
})

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ChrisCrossMedia

    ChrisCrossMe

    17 EYLÜL 2009
  • H3Ctic (old channel)

    H3Ctic (old

    23 Mart 2011
  • hoorahjencar

    hoorahjencar

    6 HAZİRAN 2007