microsoft / WinAppDriver

Windows Application Driver
MIT License
3.63k stars 1.4k forks source link

Cannot interact with WPF min, max and close buttons on secondary monitors #1086

Open Boodissy opened 4 years ago

Boodissy commented 4 years ago

In my test automation of a few WPF applications, I'm running into this error when I try to click on the default controls of resizing or closing the window:

OpenQA.Selenium.WebDriverException : An element command could not be completed because the element is not pointer- or keyboard interactable.

I've seen a handful of issues already submitted around this error, but the solutions didn't seem to resolve the problem for me. Mostly because this error behavior was inconsistent, until I discovered a commonality between the machines running the test that experience the error and ones that do not. One of those "it works on my machine" problems :)

It turns out that with multiple monitors, the left-most monitor must be the main display, and I'm able to interact with these controls. If the left-most is not the main display, this error is produced. Which monitor the application actually launches on does matter. The only configuration that needs to change is switching which display is the primary.

At this point I'm just trying to better understand why this is happening so I can develop a solution a little better than telling team members I'm enforcing a policy on which monitor they want as a main display.

Does anyone have any thoughts on why this behavior might be occurring, strictly based on main display location? I consider myself a pretty amateur developer, so I'm struggling to find the right ways to search online for info that will help me better understand why this might be happening.

Thank you for any suggestions.

karthikmsctcs commented 4 years ago

Please post some code snippet to help you further.