Javascript 如何从TestCafe选择器中提取底层HTMLDOM元素?
我正在尝试TestCafe,但在查找我的一些元素时遇到了问题。出于调试目的,我希望能够打印出TestCafe使用特定选择器找到的任何元素,以便与现有的DOM进行比较 我已经尝试阅读文档并运行以下代码:Javascript 如何从TestCafe选择器中提取底层HTMLDOM元素?,javascript,html,testing,e2e-testing,testcafe,Javascript,Html,Testing,E2e Testing,Testcafe,我正在尝试TestCafe,但在查找我的一些元素时遇到了问题。出于调试目的,我希望能够打印出TestCafe使用特定选择器找到的任何元素,以便与现有的DOM进行比较 我已经尝试阅读文档并运行以下代码: const a = await Selector('span', { timeout: 20000 }).withText('some text'); console.log(a); 然而,当我运行这段代码时,我得到的只是一些内部TestCafe类型的打印输出,如下所示: [Function:
const a = await Selector('span', { timeout: 20000 }).withText('some text');
console.log(a);
然而,当我运行这段代码时,我得到的只是一些内部TestCafe类型的打印输出,如下所示:
[Function: __$$clientFunction$$] {
with: [Function],
nth: [Function],
...
}
对于任何希望稍后得到答案的人,要获得实际的html元素,需要调用选择器,即:
const a = await Selector('span', { timeout: 20000 }).withText('text'))()
console.log(a)
这是因为Selector
创建了一个testcafe使用的函数,可以在内部执行以获取元素,但如果您想手动执行,则需要调用它
示例输出
{
nodeType: 1,
textContent: 'Before or on',
childNodeCount: 1,
hasChildNodes: true,
childElementCount: 1,
hasChildElements: true,
tagName: 'span',
visible: true,
focused: false,
attributes: {
'data-role': 'filtercell',