2016-09-28 52 views
0

我在哪裏可以找到使用量角器和茉莉花的包含後端測試的端到端測試示例?後端休息使用量角器的Api測試

+0

這是不清楚你的意思*「後端休息Api測試」*在這裏;端到端測試將*包括*網站觸摸任何API端點,還是您的意思是更直接地測試REST API?無論哪種方式SO不是在這裏找你的東西 – jonrsharpe

+0

直接測試REST API與基本身份驗證使用量角器 –

+0

爲什麼?這不是它的設計目的;它是一個瀏覽器驅動程序。 – jonrsharpe

回答

1

您可以使用nodeJs中的「http」模塊發出http請求,然後處理從api調用接收到的響應。看下面的例子

var http = require('http'); 

var options = { 
    host: 'example.com', 
    port: 80, 
    path: '/foo.html' 
}; 

http.get(options, function(resp){ 
    resp.on('data', function(chunk){ 
    //do something with chunk 
    }); 
}).on("error", function(e){ 
    console.log("Got error: " + e.message); 
}); 
0

您可以使用「http」或「request」模塊來調用服務器。 我建議API調用返回一個承諾所以在測試中,你可以使用browser.wait()函數中,等待調用在測試中得到滿足

let apiCall = function() { 
    return new Promise((resolve, reject) => { 
     request.get(url, function (error, response, json) { 
      if (!error && response.statusCode == 200) { 
       return resolve(JSON.parse(json)); 
      } else { 
       return reject(error); 
      } 
     }); 
    }); 
} 

而且

it("validates something",()=>{ 
//... 
    browser.wait(apiCall(),timeout).then(json => { 
       //do stuff with json 
      }); 
// Continue with your test 
}