-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WinAppDriver using deprecated JSON wire protocol #1610
Comments
Have you tried
|
I tried with both When I try to connect using a compliant session JSON I get: Notes*
|
@TroyWalshProf the best cheat sheet I can point you to for W3C compliance is the webdriver spec itself as this is what we used to update the legacy Edge implementation (MicrosoftWebDriver). Our current implementation is inherited from the Chromium project so I wasn't involved in their efforts to match the spec. In MicrosoftWebDriver, we treat "w3c" and "jwp" (JSON wire protocol) as two separate "dialects" the client may use, but the underlying implementation of the commands is the same. If we detect the client is using W3C-style capabilities in their session request then we switch to w3c mode. The mode determines what commands are available. For example, actions is only available in w3c mode. For commands that are common between both w3c and jwp dialects (such as click), there is only one actual command implementation and the only difference is how the parameters are parsed. The dialect that the client choses will also affect how results and errors are returned. For example, JWP uses numeric error codes but W3C uses strings. Either way, the internal representation of errors in our C++ code is the same, and the choice of dialect only affects how they are rendered in the HTTP response. |
@bwalderman - That is great news. |
@TroyWalshProf Are you using appium to connect with WinAppDriver? For Here is the capabilities I used long time ago to support both appium and without appium connection(I don't know if it's still compatible with appium). Please pay attention to
|
This is only an issue when connecting to the WinAppDriver directly. A little more context: I have been unable to make this format work with WinAppDriver 1.2.1 or 1.2.99 Here are the new session bodies I have tried:
And not to be that guy, but it seems like things would be a little easier if WinAppDriver was actually open source :) |
I'm digging into this right now so that I can form an engineering plan for updating it. This is a lot, and I can't promise that my nascent familiarity with the codebase is going to be of much help. Stay tuned. 😄 |
Great to hear someone is working on this. Hope it's feasible to figure out a solution for this. |
@DHowett Really great to hear, thank you for the update. |
@DHowett - Any update on this? |
@DHowett - Is this a dead project? |
any updates? |
Bueller, Bueller, Bueller, Bueller |
who is working on this? I had to downgrade everything for it to work. |
Instead of the direct connection with WinAppDriver, you can use Appium as the bridge between. Here are two kinds of connections:
|
@licanhua - using the Appium client works-ish |
Apparently, the community projects like Appium iterate faster than WinAppDriver. My opinion:
The second one is the one you can see the progress and control it fully from your side. |
@licanhua Thank you for the advice. I will test. I've already downgraded so it'll be in the future. I'm an amateur at this. Trying to set up automated QA as a side project for the company I work at. |
Hi @licanhua At this point, I have a Java project with appium.java_client dependency and when I create WindowsDriver I pass the URL to where WinAppDriver is running. |
Awesome, I'll follow it. |
is there any example how to use it in java project? I'm totaly lost with node !! |
Maybe you can start with Java Sample |
Is there any update on this? Can we now use WinAppDriver with Selenium 4? |
@licanhua @DHowett I can help you guys to reproduce the problem in debug mode (if you have issue in that), you can contact me on email: [email protected] |
Hi guys, |
@jonathangiber yes, you should use the same appium python libs, but connect to You can reach me in LinkedIn if you are stuck. |
This driver is still using the old JsonWireProtocol, which is obsolete .
The driver should get updated to the W3C standard standard.
Notes*
The text was updated successfully, but these errors were encountered: