Это стиль, который у меня сейчас. Довольно простая объектная модель страницы.
var loginPage = require('../pages/loginPage');
var homePage = require('../pages/homePage');
describe('Login', function () {
it('Valid Login should successfully reach the home page, with valid page title.', function () {
browser.driver.get("https://dev.mysite.com/");
loginPage.login('TestUser', 'TestPassword');
homePage.getHeaderText();
//expect header text to equal "My header"
});
});
Официальное руководство по стилю транспортира предлагает сделать это следующим образом. Создается впечатление, что объект создается для страницы, уникальной для каждого теста. Есть ли преимущество в этом?
var loginPage = require('../pages/loginPage');
var homePage = require('../pages/homePage');
describe('Login', function () {
var loginPageObj = new loginPage();
var homePageObj = new homePage();
it('Valid Login should successfully reach the home page, with valid page title.', function () {
browser.driver.get("https://dev.mysite.com/");
loginPageObj.login('TestUser', 'TestPassword');
//or should homePageObj be initialized here,
//right before it is first used?
homePageObj.getHeaderText();
//expect header text to equal "My header"
});
});