Silk Test无法识别Windows窗体主机中托管的WPF控件

时间:2014-05-23 08:54:30

标签: c# wpf winforms silktest

我有一个简单的WPF用户控件:

<StackPanel>
    <Button>Test</Button>
    <TextBox>Test</TextBox>
    <TextBlock>Test</TextBlock>
</StackPanel>

我在Windows窗体主机中托管此用户控件。 Silk Test仅将此整个用户控件标识为Element-Host,并且无法识别单个按钮或文本框。

有人对此有更多了解吗? Silk Test支持这种情况吗?

更新:

Silk Test 14.0 (早先我有13.5)我没什么成功。创建具有类似结构的测试应用程序(Windows窗体主机中的WPF控件),并使用 Silk Test 14.0 进行检查。它能够检测用户控制中的所有单个WPF控件。但是对于我的应用程序,它仍然无法检测除了&#34; Toolbar&#34;中的2个组合框之外的控件。在用户控制中,我使用的是从数据网格类

派生的自定义网格

3 个答案:

答案 0 :(得分:1)

这应该有效。

这可能取决于您如何嵌入UserControl

在我们用于测试的应用程序中,它包含在Windows窗体ElementHost - 控件中。 在代码隐藏中,您应该看到ElementHostUserControl的成员声明,​​是这种情况吗?

您的应用是否使用多个AppDomain? Silk Test目前仅支持Windows窗体的多个AppDomain,而不支持WPF,因此这可能是它不适合您的另一个原因。

答案 1 :(得分:0)

我不太了解Silk Test,但在我看来,这个工具只支持独立的WPF应用程序。在您的情况下,有一个独立的WinForms应用程序与嵌入式WPF控件。文档说:

Silk Test Workbench为测试Windows Presentation Foundation(WPF)应用程序提供内置支持。 Silk Test Workbench支持独立 WPF应用程序,可以记录和播放嵌入在.NET 3.5或更高版本中的控件。

答案 2 :(得分:0)

Silk Test团队已经确定这是一个错误。 Fix可以作为Silk Test 15.5版本的补丁发布。一旦我有更好的发布细节,我会更新这篇文章。