【发布时间】:2021-11-04 14:25:54
【问题描述】:
我必须自动化一个具有“拆卸”方法的脚本,以确保页面的状态与我们交互之前的状态相同。我在弄清楚如何做到这一点时遇到问题。我目前的想法是当某个元素的状态通过一个类不存在或在 DOM 中不可见时执行一个 while 循环。
我们有一个“undoAction”按钮,一旦页面上没有任何要撤消的内容,它的类会更新为包含“undo-disabled”,同时保持原始“undoAction”类不变。
我的问题是我在互联网上找不到任何“虽然不是真的”条件。
启用时的元素:
<div class="undoAction editor-topbar-item editor-topbar-icon-item"><i class="fa fa-undo"></i></div>
禁用时的元素:
<div class="undoAction undo-disabled editor-topbar-item editor-topbar-icon-item"><i class="fa fa-undo"></i></div>
我想做的是:
while(! .undo-disabled){
.click(.undoAction)
}
我也尝试在 .undoAction 为真时执行此循环,但问题是他们只是将 .undo-disabled 添加到元素的类列表中,而不删除 .undoAction 类,所以它进入一个无限循环。
while(.undoAction){
await t
.click(.undoAction)
if(.undo-disabled){
break
}
}
如果不创建一些东西来计算我在页面上执行的交互次数并为交互次数和递减设置 for 循环索引,还有其他方法可以处理这种情况吗?
谢谢,
【问题讨论】:
标签: javascript testing automated-tests e2e-testing testcafe