Мое условие проверки - щелкнуть гиперссылку в ячейке.
-> Таблица формата Tr, Td
Столбцы таблицы
Имя - Статус - ссылка
-> 1-й мы ищем строку, чтобы соответствовать имени.
-> После того, как строка найдена в результате нашего поиска, мы проверяем статус во 2-й колонке, той же строке.
-> статус изменяется с обработки на Завершено.
-> Когда статус завершен, в 3-м столбце создается гиперссылка. Который нужно нажать.
После проверки исходного кода через F12. Ссылка генерируется как дочерний элемент ячейки в 3-м столбце.
Поэтому я пытаюсь найти row.cell (2). GetChildren [0];
Но так как дочерний элемент существует только тогда, когда генерируется ссылка, это зависит от загрузки приложения.
я могу продолжать воспроизведение. Wait (); но это условие не должно использоваться в моей организации до тех пор, пока оно не зашло в тупик.
Я даю Свойства поиска и контроль ожидания. Но это также не работает.
Может кто-нибудь подсказать, как ждать ссылки, которой нет в пользовательском интерфейсе в настоящее время.
мой код выглядит ниже.
HtmlRow row = FindReport(reportName); // Method which finds row
VerifyStatus(reportName, status); // Method verifies status in the row and
returns true if complete
HtmlSpan link = new HtmlSpan(row);
link.SearchProperties.Add(HtmlSpan.PropertyNames.InnerText, "Order",
PropertyExpressionOperator.Contains);
for (int i = 0; i < 60; i++)
{
if (!link.WaitForControlExist())
{
Keyboard.SendKeys(HistoryPage, "{F5}");
}
else
{
Mouse.Click(row.Cells[2].GetChildren()[0]);
return;
}
}
Я застрял здесь.