我必须为一个网站编写测试,包括selectelement和跨度的值。范围值取决于selectelement中选择的选项。在选择中切换选项后,跨度更新值需要花费几毫秒的时间。没有任何等待方法,GetSpanValue()会获取旧数据,因此我必须等待。 我使用Thread.Sleep(200)等待更新,但是我知道这是一个坏主意。我该如何避免呢?
我知道有隐式和显式等待,但是如何修改它以等待span内容更改?
page.ChangeSelectOption();
Thread.Sleep(200);
page.GetSpanValue();
答案 0 :(得分:-1)
您可以使用秒表类(https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.stopwatch?view=netframework-4.8):
int millisecondsToWait = 200;
Stopwatch stopwatch = Stopwatch.StartNew();
while (true)
{
if (stopwatch.ElapsedMilliseconds >= millisecondsToWait)
{
break;
}
}
或缩短(您的选择相同):
Stopwatch stopwatch = Stopwatch.StartNew();
while (true)
if (stopwatch.ElapsedMilliseconds >= 200)
break;