microsoft / WinAppDriver

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

Future of Winappdriver? #1704

Open Meeakshi opened 2 years ago

Meeakshi commented 2 years ago

Hello Team,

We were looking for an window application automation tool to test our core banking system applications. Came across WinAppDriver by Microsoft and we thought it would be fitting for our automation development. But before we proceed, would like to know more about the forecast for this tool.

 Will there be frequent releases and support for the tool in the future?  Will there be any change in Licensing for the tool?

anunay1 commented 2 years ago

Future is Unknown @kat-y Can you please let everyone know on the future roadmap?

Urvika-gola commented 2 years ago

Adding onto this, What about Windows 11 support?

DHowett commented 2 years ago

Couple quick notes:

Hi, we're not dead. Here's a couple updates on the state of WinAppDriver:

  1. It should work on Windows 11 as-is?
  2. 1.2.99 has an annoying bug with /status, which we've root caused
  3. I'm currently testing builds on .NET 6.0, which should resolve some of the lingering issues in the release candidate
  4. I have a prototype with support for the W3C wire protocol, thanks to Troy Walsh and Jim Evans

Sorry about that.

DHowett commented 2 years ago

(Sorry, closing this was an accident.)

Urvika-gola commented 2 years ago

Hi @DHowett, Maybe we can add that in the README that WinAppDriver.exe is supported on Windows 11. https://github.com/Urvika-gola/WinAppDriver/commit/e12a4d0a09a1ee7bd7d8026af88680e76fce6cb7

mbailey-eh commented 2 years ago

@DHowett Is there a timeline on when the next build will be ready? The pre-release is from june of 2021 and it'd be great to get started on writing with dotnet core.

liljohnak commented 2 years ago

@mbailey-eh just to clarify you want your test framework to use .NET Core? Currently, we had WinAppDriver work on our application that used .Net 4.8, .Net 5.0 and now .Net 6.0. (If this is for the test framework, why is this important?)

mbailey-eh commented 2 years ago

@liljohnak

I get the following warnings when I use the nuget package as part of the code. I ran the nuget install command from the nuget site. I'm writing the tests in dotnet core 6 sdk and that's the only SDK available to me due to company restrictions

C:\somepath\UI-Tests.csproj : warning NU1701: Package 'Microsoft.WinAppDriver.Appium.WebDriver 1.0.1-Preview' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2,.NETFramework,Version=v4.8' instead of the project target framework 'net6.0'. This package may not be fully compatible with your project.

C:\somepath\UI-Tests.csproj : warning NU1701: Package 'Microsoft.WinAppDriver.Appium.WebDriver 1.0.1-Preview' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' instead of the project target framework 'net6.0'. This package may not be fully compatible with your project.
francisferreira commented 2 years ago

@liljohnak Yes, I've just performed a proof-of-concept for the integration of WinAppDriver with my company's automation framework, which is .NET 6. Things do seem to work as expected (at least the bits we covered), but the nuget package is indeed intended for .NET Framework projects, which is pretty much dead nowadays.

I also get the same warning as @mbailey-eh when building our project: Warning NU1701 Package 'Microsoft.WinAppDriver.Appium.WebDriver 1.0.1-Preview' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' instead of the project target framework 'net6.0'. This package may not be fully compatible with your project.

So far we have been using Appium.WebDriver instead, but it would be a great selling point to the rest of my team and company if WinAppDriver would have a nuget package that actually targets the latest .NET (LTS), so we could take advantage of the Actions API. Is there any news on that, @DHowett?

tonyhallett commented 2 years ago

I have a prototype with support for the W3C wire protocol, thanks to Troy Walsh and Jim Evans

Any news on this ?

Given #1692 perhaps the docs need updating - https://github.com/microsoft/WinAppDriver/blob/master/Docs/UsingAppium.md

WinAppDriver • Created to bring Windows app testing to Appium Can run standalone and does not require using Appium

If you're just testing Windows Apps it's fine to not include Appium

https://github.com/appium/appium-dotnet-driver/issues/487#issuecomment-981116827

I don't see any point in adding the support of the legacy JWP protocol into the driver just because Microsoft has abandoned the support for their WAD server. Also, it still works being used together with Appium as the latter is capable of requests transformation between W3C<>JWP.

pm90pl commented 1 year ago

Does nuget Microsoft.WinAppDriver.Appium.WebDriver is still supported? Is it needed anymore? Are all changes introduced in it merged back to Appium.WebDriver nuget?

kfertitta commented 1 year ago

I'm also trying to get the story here, as I migrated all our code to Appium.WebDriver and it doesn't seem to work with the latest WinAppDriver.

Can we get an update here please on which versions we're supposed to be using now and when there will be an update?

DLightstone commented 1 year ago

My personal opinion. It doesn't take 8 months for a large corporation to reach a policy decision. The absence of a statement is your answer.

joerg1985 commented 1 year ago

@DHowett The Json Wire Protocol support has been removed from selenium, see https://github.com/SeleniumHQ/selenium/commit/f28f1df822bea00bbff621f7e843ab46dcb8f85f. It might be time to move on to the W3C wire protocol.

kfertitta commented 1 year ago

Is it possible to get someone from Microsoft to tell us whether we're all wasting our time here? I've tried every way I know to reach out to folks involved here and the silence is deafening. Makes long-term planning extremely difficult. Very confused as to why there is such adamant refusal by Microsoft to chime in with any sort of statement at all.

mbailey-eh commented 1 year ago

@kfertitta , just give up. Last release was almost 3 years ago. If they cared enough, there would at least be a random big fix here and there.

kfertitta commented 1 year ago

@mbailey-eh , I hear ya and usually feel that way. Just dunno "where" to go in terms of a broadly used desktop app UI testing framework. WinAppDriver still seems to be the prescriptive guidance you most typically come across. But I'm definitely open to suggestions, and willing (perhaps even prefer) to pay $$$.

pm90pl commented 1 year ago

To all - just give up an use other tools.

di4blos commented 8 months ago

Hi, Do we have any updates about it? We have still pre-release version from 2021? Does Microsoft is planning to keep it alive or they plan to switch to something else? It would be good to know - I'm in the middle of making decision what should be used for automation (in Windows). It would be good to have clear answer where we stand?

MeikTranel commented 8 months ago

Funny thing is both Dev Home and Powertoys Microsoft devs added PRs using Winappdriver and they all have to write weird workarounds because of the prereleaseness of this project :D attempts to contact designated PMs have been futile so far. And people keep making issues left and right helping themselves showing the great interest this project has but absolutely no word from the ownership here.

di4blos commented 8 months ago

@MeikTranel - thank you for your answer. In some way it still does not look like it's completely dead. But we don't know what are the plans for the future. The best would be just to have simple, clear answer: "yes, it's closed" or "no, development is still alive", and we all know where we are.

kfertitta commented 8 months ago

@di4blos - Yep, exactly my situation (for some time now). For me, there remains no better alternative, so I continue to invest in WinAppDriver-based UI tests for our stuff. So frustrating Microsoft can't muster the fortitude to face the community with a straight answer and commitment one way or the other.

francisferreira commented 8 months ago

@kfertitta Same here. Thing is, even they do come out and say "Yeah, it's dead", most of us would still stick with it for some time for the lack of better alternatives. I personally tried FlaUI, AutoIT, and the UI Automation Framework (also from MS), but none of those were as fit as WinAppDriver (even with its current state) for our use cases.

If anyone knows of a suitable/potential alternative, please post here so others will know too!

pm90pl commented 8 months ago

Guys, just deal with it - it is dead. The silence is the answer, maybe a bit implicit but it is. Just move on.

francisferreira commented 8 months ago

@pm90pl Okay. Move on to what? What exactly are you using for UI Automation on your end? It would be good if you can let us know in more detail, instead of just saying "move on" or "deal with it"... You are just creating noise with this.

pm90pl commented 8 months ago

Try to limit GUI based tests as much as possible. FlaUI is a good choice. If you really need an option to run tests remotely start a new project on GitHub if there is no any and let’s build something together

pm90pl commented 8 months ago

My point was - you cannot trust MS about maintaining their projects. Sadly