Javascript gauge - хук выполнения webdriverjs внутри класса - PullRequest
0 голосов
/ 18 января 2019

плохо знакомы с javascript и калибровочными.

Вот мое, что я пытаюсь сделать, используя webdriverJs, калибр

У меня 2 класса

  • база - для запускающего драйвера

  • домашняя страница - с элементами и методами для домашней страницы

  • тогда мой тестовый файл, в котором будут мои реализации шага

Аналогично Java, вот мой базовый класс

webdriver = require('selenium-webdriver');
let driver;
class BasePage {

"beforeScenario hook here to initialize driver"
//{
    //this.driver=   new webdriver.Builder().forBrowser("chrome").build();  
//}
getDriver (){
    return this.driver;
}
navigate (){

    await  this.driver.get('https://google.com');
}
}

module.exports = BasePage;

  • И моя HomePage, которая расширяет BasePage
let basePage= require('./basePage')

class HomePage extends basePage {


//other home page functions
{driver.findElement(element).click}

}

module.exports = HomePage;
  • вот мой тест
let homePage = require('./HomePage')
step("open <site>", async function(){

    let h1 = new homePage();
   await  h1.navigate();


});

Идея состоит в том, чтобы инициировать драйвер в базовом классе и сделать его доступным для всех классов, расширяющих базовый класс. В конце я смогу запустить тесты параллельно. Но проблема в том, что я не могу успешно написать обработчики внутри базового класса. Может ли кто-нибудь помочь мне понять, пытаюсь ли я сделать что-то, что я концептуально ошибаюсь. Есть ли лучший способ добиться того, что я пытаюсь? Любая помощь приветствуется.

...