我如何使用testcafe获取表的一列文本,然后断言其eql为“ something”

时间:2019-06-27 07:23:57

标签: javascript java testing automation testcafe

我有一个带有“搜索字段”和“搜索按钮”的页面以及一个有5列的表格。我想使用testcafe + javascript进行自动化测试,如下所示:

1:在“搜索字段”中输入-完成

2:单击“搜索按钮”-完成

3:获取第二列中所有元素的TEXT,并断言它等于“ something”。

我用Java + Selenium WebDriver做到了。它已经完成了,但是我对JavaScript不太满意,仍然无法研究如何做到这一点。

2 个答案:

答案 0 :(得分:3)

也许以下代码可以帮助您:

const secondColumnElements = Selector('table tr td:nth-child(2n)');
const elementsCount = await secondColumnElements.count;
let text = '';

for (let i = 0; i < elementsCount; i++)
    text += await secondColumnElements.nth(i).textContent;

await t.expect(text).eql('something');

答案 1 :(得分:1)

运行测试时,显示以下错误:

errMsg: 'AssertionError: expected ' +
       "'Do[object Object]' to deeply " +
       "equal 'Do'"

代码如下:

const secondColumnElements = Selector (Selector)
const elementsCount = await secondColumnElements.count;

let text = '';

for (let i = 0; i < elementsCount; i += 1) {
 text += secondColumnElements.nth(i).textContent;
}

await testController.expect(text).eql('Do');
});