.elements работает нормально в контексте "nightwatch" , и я могу получить количество строк в таблице
module.exports = {
async 'demo test'(browser) {
const homePage = browser.page.homepage();
homePage.navigate();
let result = await homePage.api.elements('css selector', 'div.flex.mt-4.v-card.v-sheet.theme--light > div > div > table > tbody > tr');
console.log(" row length is " + "<->" + result.value.length);
}
};
Вывод: длина строки <-> 10
Однако тот же код не работает, когда я пытаюсь использовать его в методах Given / Then с огурцом в контексте "nightwatch-api" .
const { client } = require('nightwatch-api');
const { Given, Then, When } = require('cucumber');
Given(/^click "([^"]*)" service from list$/, async function (service) {
const homepage = client.page.homepage();
homepage.navigate();
let result = await homepage.api.elements('css selector', 'div.flex.mt-4.v-card.v-sheet.theme--light > div > div > table > tbody > tr');
console.log(" row length is " + "<->" + result.value.length);
});
Ошибка: TypeError: Невозможно прочитать свойство 'value' из неопределенного
Любая идея, как я могу заставить его работать с nightwatch-api и огурцом, Спасибо!
Мое сомнение было верно. Объект Nightwatch Browser и клиент Nightwatch-API отличаются ... Вот доказательство.
module.exports = {
async 'demo test'(browser) {
const homePage = browser.page.homepage();
homePage.navigate();
let result = await homePage.api.elements('css selector', 'div.flex.mt-4.v-card.v-sheet.theme--light > div > div > table > tbody > tr');
console.log(" NightWatch Obj Row Length is " + "<->" + result.value.length);
console.log("<<===================>>");
const { client } = require('nightwatch-api');
const { createSession, closeSession, startWebDriver, stopWebDriver } = require('nightwatch-api');
await createSession();
const homePage1 = client.page.homepage();
homePage1.navigate();
let result1 = await homePage1.api.elements('css selector', 'div.flex.mt-4.v-card.v-sheet.theme--light > div > div > table > tbody > tr');
console.log(" Nightwatch API Obj Row length is " + "<->" + result1.value.length);
await closeSession();
}
};
Вывод ::
NightWatch Obj Row Length is <->10
<<===================>>
FAILED: 1 errors (6.392s)
TypeError: Cannot read property 'value' of undefined
at Object.demo test (C:\Users\tajisingh\workspace\dashboard-ui-automation\Tests\dashboard.js:40:70)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
_________________________________________________
Хотите знать, если кто-нибудь знает, как мы можем получить браузер? объект или что-то похожее из nightwatch-api ... спасибо!