Получить текст по выбранной ссылке или кнопке

Я перемещаюсь, чтобы сказать страницу Google, и отправляю нажатия клавиш, например клавишу Tab, шесть раз, и мне нужно получить текст выделенной ссылки или кнопки или любой элемент управления, который в этом случае будет ссылкой на конфиденциальность

    [Test]
    public void GooglePageTabNavigation()
    {
        Go.To<GooglePage>().
            Wait(2).
            Press(Keys.Tab).
            Wait(1).
            Press(Keys.Tab).
            Wait(1).
            Press(Keys.Tab).
            Wait(1).
            Press(Keys.Tab).
            Wait(1).
            Press(Keys.Tab).
            Wait(1).
            Press(Keys.Tab).
            .....
            //code to get text
            .....
     }

1 ответ

Решение

Вы можете определить следующий метод расширения:

public static class IPageObjectExtensions
{
    public static Control<TOwner> GetActiveControl<TOwner>(this IPageObject<TOwner> pageObject)
        where TOwner : PageObject<TOwner>
    {
        return pageObject.Controls.Create<Control<TOwner>>(
            "<Active>",
            new DynamicScopeLocator(so => AtataContext.Current.Driver.SwitchTo().ActiveElement()));
    }
}

А затем используйте этот метод:

Go.To<GooglePage>().
    //...
    GetActiveControl().Content.Should.Equal("Privacy");
Другие вопросы по тегам