【发布时间】:2017-04-28 08:57:55
【问题描述】:
我目前正在使用 White/TestStack 来测试一个 Windows 应用程序。
有些场景需要用户点击链接才能在浏览器上打开页面。如何检查超链接是否有效?
【问题讨论】:
-
超链接是在嵌入式浏览器还是外部浏览器中打开?
标签: windows automation browser-automation white-framework
我目前正在使用 White/TestStack 来测试一个 Windows 应用程序。
有些场景需要用户点击链接才能在浏览器上打开页面。如何检查超链接是否有效?
【问题讨论】:
标签: windows automation browser-automation white-framework
老问题,但万一其他人在寻找答案:
如果您签入White GitHub 存储库并浏览 UITests 和控制测试,您将找到Hyperlink control test。在源代码中,您会根据使用的框架类型找到几个测试。
最简单的一个:
var hyperlink = MainWindow.Get<Hyperlink>("LinkLabel");
hyperlink.Click(10, 10);
Assert.That(hyperlink.HelpText, Is.EqualTo("Hyperlink Clicked"));
测试基于 MainWindow 的代码隐藏使用:
private void Hyperlink_OnClick(object sender, RoutedEventArgs e)
{
AutomationProperties.SetHelpText(LinkLabel, "Hyperlink Clicked");
}
主窗口中超链接的 XAML 代码
<TextBlock x:Name="LinkLabelContainer">
<Hyperlink x:Name="LinkLabel" Click="Hyperlink_OnClick">Link Text</Hyperlink>
</TextBlock>
所以你可以使用相同的方法。
TL;DR
您可以将超链接的Click() 事件链接到代码中的方法,在该方法后面使用单击事件的特定值更新超链接的自动化属性HelpText。
因此,在您的测试中,您只需执行点击,然后检查自动化属性值。
【讨论】: