Как проверить пост-запросы с помощью NodeUnit и Express?

StackOverflow https://stackoverflow.com/questions/6304603

Вопрос

Я пишу простую службу отдыха в node.js (просто экспериментируя), пытаясь выяснить, достаточно ли узел. Я также использую NodeUnit для моего модульного тестирования.

Теперь NodeUnit прекрасно работает в качестве структуры тестирования для тестирования get-requests, используя Httputils, однако, тестирование пост-запросов не кажется очевидным.

Тестирование выглядит так:

exports.testHelloWorld = function(test) {
    test.expect(1);
    httputil(app.cgi(), function(server, client) {
        client.fetch('GET', '/', {}, function (resp) {
            test.equals('hello world'), resp.body);
            test.done();
        });
    });
}

Но как мне проверить пост-запросы? Я могу изменить «получить» на «post» и попытаться написать что -то «клиенту», однако это не работает раньше. И это также не работает в функции обратного вызова.

Я заглянул в код NodeUnit, и, похоже, в настоящее время не поддерживает публикацию данных. Итак, вот мои вопросы:

  • Что нужно, чтобы проверить пост-запросы?
  • Должен ли я даже проверить пост-запросы в модульном тесте, или это подпадает под тест интеграции, и я должен использовать другой подход?
Это было полезно?

Решение

Вы можете попробовать эту библиотеку вместо NodeUnit: https://github.com/masylum/testosterone

Он построен специально для тестирования веб -приложений через HTTP.

Другие советы

Я только что написал эту библиотеку для тестирования HTTP -серверов с NodeUnit:

https://github.com/powmedia/nodeunit-httpclient

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top