Мы написали веб-API RESTful, который отвечает на запросы GET и PUT, используя node.js.У нас возникли некоторые трудности при тестировании API.Во-первых, мы использовали Zombie.js , но это плохо документировано, поэтому мы не смогли заставить его делать запросы PUT:
var zombie = require("zombie");
describe("description", function() {
it("description", function() {
zombie.visit("http://localhost:3000/", function (err, browser, status) {
expect(browser.text).toEqual("A")
});
});
});
После этого мы попытались использовать REST-клиент с именем restler , что было бы хорошо, так как нам не нужно никакого расширенного моделирования браузера.Это не удается из-за того, что запрос кажется асинхронным - т. Е. Тест бесполезен, поскольку он заканчивается до вызова обратного вызова «on success»:
var rest = require('restler');
describe("description", function() {
it("description", function() {
rest.get("http://www.google.com").on('complete', function(data, response) {
// Should fail
expect(data).toMatch(/apa/i);
});
});
});
Мы будем благодарны за любые советы об альтернативныхтестирование фреймворков или синхронных запросов клиентов.