C# UIAutomation.RangeValuePattern:不同的行为UIVerify与我自己的测试 处境

C# UIAutomation.RangeValuePattern:不同的行为UIVerify与我自己的测试 处境,c#,visual-studio-2012,ui-automation,microsoft-ui-automation,C#,Visual Studio 2012,Ui Automation,Microsoft Ui Automation,我需要使用滑块为程序编写一个测试: 当我使用UIVerify时,slider工作,程序对SetValue做出响应(不仅控制更改该值,而且业务逻辑也对新值做出响应)。唯一的问题-范围限制不等于表单上的标签[-90;90]和UIVerify中的标签[0;100]: 但在我的测试程序中,滑块控制行为完全不同。首先,我在同一时间(并行)得到同一控件的不同限制和当前值:(图3) 但主要的问题是:当我在测试程序中调用SetValue时,滑块改变了“thumb”的位置,但bussines层没有看到任何变化。

我需要使用滑块为程序编写一个测试:

当我使用UIVerify时,slider工作,程序对SetValue做出响应(不仅控制更改该值,而且业务逻辑也对新值做出响应)。唯一的问题-范围限制不等于表单上的标签[-90;90]和UIVerify中的标签[0;100]:

但在我的测试程序中,滑块控制行为完全不同。首先,我在同一时间(并行)得到同一控件的不同限制和当前值:(图3)

但主要的问题是:当我在测试程序中调用SetValue时,滑块改变了“thumb”的位置,但bussines层没有看到任何变化。 我曾经尝试过VS2008(UI自动化3.0)和VS2012(UI自动化4.0)——同样的问题。UI验证的版本为2.0。我在CodePlex上找到了UI验证的来源,并发现UI验证不是通过.net UI自动化而是通过Com包装器工作的(换句话说,它有自己的.net UI自动化实现)

临时解决办法
我正在调用SetValue之后的增加-减少来通知业务逻辑。但我希望找到更好的解决办法!:-)

Com包装器使用本机UI自动化DLL,这些DLL没有.NET版本的一些bug。我在SO上看到过类似的讨论,但无法快速找到链接。Com包装器使用本机UI自动化DLL,它没有.NET版本所具有的一些bug。我曾在SO上看到过类似的讨论,但无法快速找到链接。