代码之家  ›  专栏  ›  技术社区  ›  andreja

UI自动化测试右键单击菜单

  •  6
  • andreja  · 技术社区  · 17 年前

    我正在尝试使用UI自动化来自动化WPF应用程序的测试。我在模拟鼠标右键单击和在右键单击菜单中选择不同选项时遇到问题。有什么建议吗?

    我在运行使用UI自动化编写的其他测试时也遇到了问题。因为如果我没有打开uispy和最小化所有程序,它们就不想启动。

    1 回复  |  直到 15 年前
        1
  •  3
  •   andreja    17 年前

    通过大量浏览,我找到了这个解决方案。它可能对其他人有帮助: UI Automation in Silverlight

    只添加了简单的右键单击代码

    public static class Mouse
        {
    
            private const UInt32 MouseEventLeftDown = 0x0002;
            private const UInt32 MouseEventLeftUp = 0x0004;
            private const UInt32 MouseEventRightDown = 0x0008;
            private const UInt32 MouseEventRightUp = 0x00010;
    
    
            [DllImport("user32.dll")]
    
            private static extern void mouse_event(UInt32 dwFlags, UInt32 dx, UInt32 dy, UInt32 dwData, IntPtr dwExtraInfo);
    
    
    
            public static void Click()
            {
                mouse_event(MouseEventLeftDown, 0, 0, 0, IntPtr.Zero);
                mouse_event(MouseEventLeftUp, 0, 0, 0, IntPtr.Zero);
                Thread.Sleep(100);
            }
    
            public static void RightClick()
            {
                mouse_event(MouseEventRightDown, 0, 0, 0, IntPtr.Zero);
                mouse_event(MouseEventRightUp, 0, 0, 0, IntPtr.Zero);
                Thread.Sleep(100);
    
            }