У меня есть несколько элементов, которые существуют в разных представлениях. В одном представлении элемент не находится в рамке. В другом представлении элемент находится в рамке. Я написал функции для работы с элементами вне кадра. Теперь я хочу настроить одни и те же функции для работы с элементами как в фрейме, так и вне фрейма.
Если это в Selenium, мы можем просто переключиться на фрейм, когда элементы находятся в фрейме. фрейм и весь остальной код такие же.
Кто-нибудь может ответить?
public async Task ClickCommand(string name, string subName = null, string subSecondName = null)
{
var commandLocator = Locator(CommandBarLocators.CommandItem.Replace("[Name]", name));
try
{
await ClickAsync(commandLocator, new LocatorClickOptions { Timeout = 7000 });
}
catch (TimeoutException ex)
{
await ClickMoreCommandEllipsis();
await ClickAsync(commandLocator);
}
if (!string.IsNullOrEmpty(subName))
{
var subNameLocator = Locator(CommandBarLocators.CommandItem.Replace("[Name]", subName));
await ClickAsync(subNameLocator);
}
if (!string.IsNullOrEmpty(subSecondName))
{
var secondSubNameLocator = Locator(CommandBarLocators.CommandItem.Replace("[Name]", subSecondName));
await ClickAsync(secondSubNameLocator);
}
}```
Подробнее здесь: https://stackoverflow.com/questions/791 ... sted-in-th