Невозможно щелкнуть ссылку на странице, используя объектную модель страницы Nightwatch с Cucumber.

Я настроил свой проект, используя cucumber [функция, определения шагов и классы объектов страницы].Моя функция выглядит так: Функция: Сценарий входа в систему: Функциональность входа в систему После запуска домашней страницы, затем я нажимаю "Войти", и страница входа запускается

Файл определения моего шага:

const { client } = require('nightwatch-cucumber');
const { defineSupportCode } = require('cucumber');
const homePage = client.page.home();
const loginPage = client.page.login();
defineSupportCode(({ Given, Then, When }) => {
  Given('I launch home page', async () => {
    // Write code here that turns the phrase above into concrete actions
    await homePage
     .navigate()
     .waitForElementVisible('@body', 1000);
  });
  Then('I click on Sign In', async () => {
    // Write code here that turns the phrase above into concrete actions
    homePage
     .submit();
  });
  Then('the login page is launched', async () => {
    // Write code here that turns the phrase above into concrete actions
 });
});

Класс объекта моей домашней страницы выглядит так:

module.exports = {  
    url: 'https://www.homeimprovementpages.com.au',
    elements: {
      body: 'body',
      signInLink: {
        selector: "a[title='Sign in']",
      }
    },
    commands: [{
        submit: function(){          
             function callback () {
                console.log('is client: yesssss ');
           }
           console.log('in submit ----- ');
           this
            .waitForElementVisible('@signInLink',1000)
            .click('@signInLink',callback());
          }
      }]
  };

Результат выглядит следующим образом: Запуск сервера селена... запущен - PID: 63132 ✔ Элемент был виден через 311 миллисекунд. .in submit ----- это клиент: yesssss .. 1 сценарий (1 пройдено) 3 шага (3 пройдено) 0m05.928s

Тем не менее, элемент входа не нажимается. Что мне здесь не хватает? Можете ли вы вести, пожалуйста? Я могу это из-за асинхронного характера JavaScript, но как я могу справиться с этим? Я новичок в этом узле и Nightwatch. Пожалуйста помоги!

С уважением Jas

0 ответов

Другие вопросы по тегам