Repository: microsoft/WinAppDriver

Issue #958: Unable to perform click action on the web element which is IsOffscreen is true
Created: 2019-11-12T12:13:59Z
HI
I am trying to automate a Windows app in which I am unable to perform click action for a web element which has IsOffscreen is true
Trying to click an element using
StoreSession.findElementByXPath("//Text[@name='mpaff@manh.com']").click();
Displays the below error message:
org.openqa.selenium.WebDriverException: An element command could not be completed because the element is not pointer- or keyboard interactable. (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 1.10 seconds
Build info: version: '3.3.1', revision: '5234b325d5', time: '2017-03-10 09:10:29 +0000'
System info: host: 'POS-HP', ip: '10.85.21.94', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_221'
Driver info: io.appium.java_client.windows.WindowsDriver
Capabilities [{app=com.manh.storeui_h35559jr9hy9m!com.manh.storeui, platformName=Windows, platform=ANY}]
Session ID: E024FA67-7683-44A7-8824-7B056704029F
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:216)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:168)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:638)
at io.appium.java_client.DefaultGenericMobileDriver.execute(DefaultGenericMobileDriver.java:42)
at io.appium.java_client.AppiumDriver.execute(AppiumDriver.java:1)
at io.appium.java_client.windows.WindowsDriver.execute(WindowsDriver.java:1)
at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:274)
at org.openqa.selenium.remote.RemoteWebElement.click(RemoteWebElement.java:84)
at CalculatorTest.setup(CalculatorTest.java:36)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:89)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:41)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:541)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:763)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:463)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:209)
Please find the below screenshot of element been identified using inspect.exe

Can someone please help me on this or provide any alternative way to do this?

Duplicate issue #983: selenium-appium - Can't click a MenuItem
Created: 2019-11-25T22:51:23Z
I'm testing a WindowsForms application using selenium-appium. I am attempting to click a MenuItem in a MenuStrip menu. The root menu can be clicked with an element.click() call, but the MenuItem beneath cannot be clicked with element.click() - I run into an ElementNotInteractableError. It appears that there is Menu element masking the MenuItem (inspect.exe flashes the MenuItem briefly before showing this Menu element, the MenuItem in question has an IsOffscreen property of true despite being visible, and the Menu element is clickable at that time).
I have tried simply moving the mouse to coordinates of the underlying element like
session.actions({ bridge: true })
.move({ origin: element })
.press()
.pause(10)
.release()
.perform();
where session is the WebDriver session and element is the WebElement object, but this results in the following error
WebDriverError: An unknown server-side error occurred while processing the command. Original error: Could not proxy. Proxy error: Could not proxy command to remote server. Original error: 501 - "Command not implemented: POST: /session/1D676E64-3D25-4A72-9F16-C6EB45F2D0BD/execute"
I have searched through the documentation to find alternatives to this, but can't seem to find a way to click this element. Is there a way to click an arbitrary point on the screen with selenium-appium, or is this a feature which is not implemented yet?

Closing comment (2019-12-03T06:17:40Z): Possible a dup of #958 if IsOffscreen=true