[英]How to use intern leadfoot waitForDeletedByXpath function?
在什么情况下可以使用实习生的前脚板waitForDeletedByXpath函数? 从文档中,我了解到此方法等待元素在Page中变为不可见。 但是在实现时似乎并非如此。 我正在使用的Scenerio如下:
我的应用程序中有一个页面,我可以在其中搜索带有一些预定义参数的数据。 单击搜索按钮后,将在页面上显示加载图标,直到将数据加载到数据网格中为止,并且在加载数据之后,加载图标消失。 因此,我试图使用此功能来等待加载图标从页面中消失,以便我可以读取datagrid中的数据而不会出现任何问题,但它似乎无法正常工作。 有人可以介绍一下此功能的工作原理,并向我指出正确的方向以实现我正在尝试做的事情。 谢谢
我相信这里发生的事情是对waitForDeletedByXPath
方法的作用的轻微误解。
该方法的文档说的是:
“等待此元素内与给定name属性匹配的所有元素被破坏 。”
当您的加载图标消失时,它很可能仍是DOM的一部分,尽管它只是设置为不可见。 此方法希望该元素完全不再是DOM的一部分。
根据我的经验,您需要做的是为您的加载图标设置自己的“等待元素不可见”方法。
例如:
return this.remote .then(function () { const waitForLoadingIconNotDisplayed = function (remoteSession) { return remoteSession .findByCssSelector('your_loading_icon_css_selector') .isDisplayed() .then(function (isDisplayed) { if (isDisplayed) { return waitForLoadingIconNotDisplayed(remoteSession); } return true; }); }; return Promise.all([waitForLoadingIconNotDisplayed(this.parent)]); })
这将一直循环直到满足以下条件:不再使用Promise.all()
调用将您的加载图标设置为在UI中显示。
希望这有助于引导您走上正确的道路!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.