我使用TestCafe工作室来记录一些测试。但是,如果您要更改某些列表的结构,则这些测试非常有用。我尝试在Java Script中对选择器进行一些优化,以使测试能够在某些列表中独立运行。但要实现这一点,我还需要理解选择器的“第n”元素。
在我例子中,TestCafe Studio脚本包含:
.click(Selector('div').withText('testcafe#1').nth(9).find('div').nth(2).find('div').nth(1))
请看一下页面树。我不明白“第n(9)”元素是什么意思。这里的祖先是什么形式的"withText"?意味着我必须从树中的哪个元素开始向前数9?
我有一个很大的问题,"nth“看起来总是一个动态数字。特别是在React网页中。因此,在我从它的计数中知道父对象在哪里之前,它实际上是不可用的。在网页上,我必须测试一个列表元素有时是第n(36)个,有时是第n(37)个。那么谁能帮我弄清楚TestCafe从哪里开始计算第n个数?
发布于 2019-09-09 09:40:55
我不明白“
(9)”元素是什么意思。3.
TestCafe documentation help topic说:“根据元素在匹配集合中的索引来查找元素。”也就是说,TestCafe获取链的结果,并通过索引获取必要的元素。为了计算Selector('div').withText('testcafe#1').nth(9)
选择器的目标元素,TestCafe将执行以下步骤:
find elements
div
只查找innerText
属性包含'testcafe#1‘值的元素我有一个很大的问题,“
”看起来总是一个动态数字。3.
你是正确的。对动态列表使用nth
方法是不正确的。相反,可以尝试使用基于类名、标记名或其他名称的其他选择器。
https://stackoverflow.com/questions/57842930
复制相似问题