Pruebas • Setup • Diferentes tipos de integración • 2 maneras de ejecutar las pruebas • Jasmine • Métodos de Protractor • Ejemplo básico • Refactorización de pruebas • Manejo de datos • Aceleración de pruebas
homepage', function() { it('has a correct title', function() { browser.get('/'); var title = browser.getTitle(); expect(title).toEqual('Awesome web app'); }); });
is not logged in', function() { // specific tests for the scenario }); describe('when the user is logged in', function() { // specific tests for the scenario }); });
= 'The string to be compared'; var baz = 'compared'; var bar = 'hola'; expect(foo).toMatch(baz); // true expect(foo).toMatch(/string/); // true expect(foo).toMatch(bar); // false });
describe('when the user does exist', function() { it('shows an element with the full name', function() { var searchInput = element(by.model('user.email')); var doSearchBtn = element(by.css('.btn-success')); var nameElement = element(by.binding('user.name')); searchInput.sendKeys('[email protected]'); doSearchBtn.click(); expect(nameElement.getText()).toEqual('John Snow'); }); }); });
describe('when the user does exist', function() { ... it('shows an element with the job', function() { var searchInput = element(by.model('user.email')); var doSearchBtn = element(by.css('.btn-success')); var jobElement = element(by.binding('user.job')); searchInput.sendKeys('[email protected]'); doSearchBtn.click(); expect(jobElement.getText()).toEqual('Lord Commander'); }); }); });
var page = new UserSearchPage(); beforeEach(function() { page.get(); }); describe('when the user does exist', function() { it('shows an element with the full name', function() { page.searchInput.sendKeys('[email protected]'); page.doSearchBtn.click(); expect(page.nameElement.getText()).toEqual('John Snow'); }); it('shows an element with the job', function() { page.searchInput.sendKeys('[email protected]'); page.doSearchBtn.click(); expect(page.jobElement.getText()).toEqual('Lord Commander'); }); }); });
var page = new UserSearchPage(); beforeEach(function() { page.get(); }); describe('when the user does exist', function() { beforeEach(function() { page.searchInput.sendKeys('[email protected]'); page.doSearchBtn.click(); }); it('shows an element with the full name', function() { expect(page.nameElement.getText()).toEqual('John Snow'); }); it('shows an element with the job', function() { expect(page.jobElement.getText()).toEqual('Lord Commander'); }); }); });
var page = new UserSearchPage(); beforeEach(function() { page.get(); }); describe('when the user does exist', function() { beforeEach(function() { page.searchInput.sendKeys('[email protected]'); page.doSearchBtn.click(); }); it('shows an element with the full name', function() { expect(page.nameElement.getText()).toEqual('John Snow'); }); it('shows an element with the job', function() { expect(page.jobElement.getText()).toEqual('Lord Commander'); }); }); });
var page = new UserSearchPage(); beforeEach(function() { page.addUsersMock(); page.get(); }); afterEach(function() { page.removeUsersMock(); }); describe('when the user does exist', function() { ... }); });
does exist', function() { beforeEach(function() { page.searchInput.sendKeys('[email protected]'); page.doSearchBtn.click(); }); it('shows an element with the full name', function() { expect(page.nameElement.getText()).toEqual('John Snow'); }); it('shows an element with the job', function() { expect(page.jobElement.getText()).toEqual('Lord Commander'); }); }); });