从选定的 link 或按钮获取文本
Get text from selected link or button
我正在导航说 Google 页面并发送 Tab 键等击键六次,我需要获取突出显示的 link 或按钮或任何控件的文本这种情况将是隐私 link
[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
.....
}
您可以定义以下扩展方法:
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");
我正在导航说 Google 页面并发送 Tab 键等击键六次,我需要获取突出显示的 link 或按钮或任何控件的文本这种情况将是隐私 link
[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
.....
}
您可以定义以下扩展方法:
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");