Получить текст по выбранной ссылке или кнопке - PullRequest
0 голосов
/ 03 мая 2018

Я перемещаюсь, чтобы сказать страницу 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 Ответ

0 голосов
/ 03 мая 2018

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

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");
...