WPF - 使用指定坐标生成鼠标,向上移动和向上移动(在测试中)

时间:2018-03-27 12:44:55

标签: c# wpf teststack

我需要生成鼠标按下,鼠标移动以及最后鼠标移动事件以实现拖动框,该拖动框根据框的大小执行计算。

我已经看过3种实现这个目标的方法:

  1. TestStack.White - 我可以在UI上执行Click()和DragAndDrop()操作,但似乎无法执行MouseDown,MouseMove和MouseUp
  2. 按照此处的建议提升鼠标事件How can I raise a mouse event in WPF / C# with specific coordinates?问题在于我无法模拟MouseDevice(或从中继承),所以我看不到任何设置所需坐标的方法
  3. 使用InputSimulator执行点击: inputSimulator.Mouse.LeftButtonDown(); inputSimulator.Mouse.MoveMouseBy(5, 3); inputSimulator.Mouse.LeftButtonUp(); 问题是,当在单元测试中使用时,这确实会触发任何东西
  4. 理想情况下,我会将鼠标包装并作为依赖项传入(因此我可以使用Moq来模拟它),但我不认为这是可能的,因此我为什么要尝试生成鼠标事件。

    我想我在这里要完成的是能够设置MouseDevice的鼠标坐标,以便我可以在UserControl上引发我正在测试的事件,但我不确定这是否可行。

    有没有办法让这项工作?

0 个答案:

没有答案