gpt4 book ai didi

Selenium - 跟随快速加载指示器

转载 作者:行者123 更新时间:2023-11-28 20:36:12 26 4
gpt4 key购买 nike

我需要测试一个数据表,它在每次更改时都有一个加载指示器。有时这个指标非常快。为了跟上这些非常快速的 UI 变化,selenium 是否有任何最佳实践? (例如加载指示器)。

最佳答案

我使用以下 C# 在 dom 中查询具有已知加载值的 ID 和类,并等待它们不存在。使用 driver.FindElement(By*) 尝试声明元素存在于给定标识符处而不是搜索它,这将导致错误并且不是我们正在寻找的行为。

public IWebDriver WaitForPage()
{// Query document for loading elements until none found
var wait = new WebDriverWait(driver,MyDefaultTimeout)
.Until(
e => ((IJavaScriptExecutor)e)
.ExecuteScript(@"
var MyDefaultTimeout = 500;
var loaded = false;
do {
var elementClasses = document.getElementsByClassName('//*[contains(@class=\'is-loading\') or contains(@class=\'fa-gear\') or contains(@class=\'loading\') and not(@class=\'displayed\')]');
var elementIds = document.getElementById('//*[contains(@id=\'hover-gear\') or contains(@id=\loading-gear\')]');
if((!elementClasses === null) || (!elementIds === null)){
setTimeout(function() { loaded = false }, MyDefaultTimeout);
}
else{
if(!document.readyState === 'complete'){
setTimeout(function() { loaded = false }, MyDefaultTimeout);
}
else{
loaded = true;
return document.readyState;
}
}
}
while(loaded === false);", null))
.Equals("complete");
return driver;
}

关于Selenium - 跟随快速加载指示器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53592149/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com