Я использую codeceptjs с кукловодом.
Теперь проблема, с которой я столкнулся, я либо не знаю, что это можно сделать внутри кукловода, либо я не уверен, как это сделать с местным кукловодом.
Я хочу нацелиться на элемент и получить всю информацию для этого элемента, затем сопоставить строку и получить некоторые определенные данные. У меня есть код, который работает на нативном кукловоде, но я не уверен, как его использовать в Codeceptjs.
Поскольку у Puppeteer есть файл помощника внутри codecptjs, я не просто хочу снова требовать кукловода, я бы просто направил запрос помощнику.
let match ='';
const targetEls = await page.$$('#element');
for(let target of targetEls)
{
const cell_content = await page.evaluate(el => el.innerHTML, target);
let county = (cell_content.match(/string_to_match/g) || []).length;
if(county === 2)
{
match = cell_content.match(/http:\/\/(\w*)\.(\w*)\/(\w*)\/(\d*)/gi).pop(); // searches for url within element info and pop it out.
break;
}
}
Проблема, с которой я столкнулся, заключается в том, что await page.evaluate(el.innerHTML, target)
не работает с codeceptjs, поскольку я не создал экземпляр кукловода в своем коде шагов. Тем не менее, это внутри кукловода helper.js