作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何在 Teststack White 中实现动态超时?前任。我试图在网络浏览器上的回发事件后定位一个元素。因此在元素加载或页面可能超时之前会有延迟。对于这两种情况,使用 Thread.Sleep 的静态超时都有效,但如何实现动态超时接口(interface),如果在超时上限之前检测到元素或将在达到超时上限时超时,该接口(interface)将继续执行。
谢谢
最佳答案
您可以实现扩展方法来获取元素并在其中放置一个等待条件。
public static T GetWithWait<T>(this Window window, SearchCriteria searchCriteria, int timeout = 30) where T : UIItem
{
T result = null;
for (int i = 0; i < timeout; i++)
{
result = window.Get<T>(searchCriteria);
if (result != null)
{
return result;
}
Thread.Sleep(TimeSpan.FromSeconds(1));
}
return result;
}
从 Window 对象中,您可以使用通常用于查找元素的 SearchCriteria 调用此方法。
关于ui-automation - 如何在 Teststack White 中实现动态超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26348604/
我是一名优秀的程序员,十分优秀!