https://stackoverflow.com/a/25149395/3330910 cevabından kodu kullandım.İleticinin yan tarafındaki http isteği yanıtı nasıl beklenir
it('HTTP request', function() {
var BackRequest = require('../helper/backRequest');
var request = new BackRequest();
page.visitPage();
request.setBaseUrl('http://localhost:8081');
// Step #1
request.get('/api/v1/one')
.then(function(result){
expect(result.statusCode).toBe(100); // An error #1
expect(result.bodyString).toContain('Some text');
});
// Step #2
expect(1).toBe(2); // an error #2
});
Ve sırayla hataları olsun:
ben yapacağım
- Hata #
Hata # nasıl iletki zorlayabilirsiniz 2 Adım # 1'i beklemek ve daha sonra # 2 adımını yapmak.
Şimdilik sadece Yapabileceğim sonra zincire() işlevleri:
describe('Scenarios', function() {
beforeEach(function() {
page.visitPage();
});
var chain = function() {
var defer = protractor.promise.defer();
defer.fulfill(true);
return defer.promise;
};
it('HTTP request', function() {
var BackRequest = require('../helper/backRequest');
var request = new BackRequest();
request.setBaseUrl('http://localhost:8081');
chain()
.then(function() {
// Save data
})
.then(function() {
request.get('/api/v1/one')
.then(function (result) {
expect(result.statusCode).toBe(200);
expect(result.bodyString).toContain('text');
});
})
.then(function() {
// Change and Save again
})
.then(function() {
request.get('/api/v1/one')
.then(function (result) {
expect(result.statusCode).toBe(200);
expect(result.bodyString).toContain('new text');
expect(result.bodyString).not.toContain('text');
});
});
});
});
Teşekkür:
request.get('/api/v1/one')
.then(function(result){
expect(result.statusCode).toBe(100); // An error #1
expect(result.bodyString).toContain('Some text')
.then(function(result){
expect(1).toBe(2);
});
Güncelleme Yani
, gelecek yaklaşımla biter Yardım için Leo Gallucci.
Cevabınız için teşekkürler. Ayrı bir It() yaklaşımını kullandım, fakat her şeyi tek bir testte yapmak istiyorum. Testi kontrol etmek için görev eklemenin bir yolu var mı? –