red-gate/Tech-Radar

GUI test technologies for WPF apps

Closed this issue · 2 comments

What change would you like to make to the tech radar?

  • Move WinAppDriver to endure/retire
  • Move System.Windows.Automation out of endure?

Why do you believe this is valuable to Redgate?

It seems like WinAppDriver, whilst not officially unsupported does appear to not be in active development / support either. See: microsoft/WinAppDriver#1103

  • The latest stable release is 1.1 which was released in 2018
  • The latest pre-release / release candidate is 1.2 (Oct 2019)
    • We did use this version for a while and it did work ok
  • The latest commit to the repo was in 2019
  • The maintainers don't appear to be very active in the issues

I feel that we should probably reconsider using System.Windows.Automation. Having spent time experimenting with writing gui tests using System.Windows.Automation I found that we didn't end up with significantly more boilerplate or adapter classes than we had with our WinAppDriver approach, and our tests still describe things at a good level of abstraction. We have also encountered a few issues using WinAppDriver on Versioning which I can elaborate on in a comment in this issue, but I feel that doesn't really belong in this first post?

I would be interested to hear how other teams have found using WinAppDriver and System.Windows.Automation. Does the risk of lack of future support impact their thoughts on continuing to use it. In particular what have teams found out around the reliability tests using each of the technologies?

Where should this be on the tech radar?

WinAppDriver should be in endure / retire?

Having spent time experimenting with writing gui tests using System.Windows.Automation I found that we didn't end up with significantly more boilerplate or adapter classes than we had with our WinAppDriver approach, and our tests still describe things at a good level of abstraction.

This was many years ago, but yeah from what I remember being on the Compare team and writing the new GUI tests using UIAutomation I think our experience was similar - the APIs were generally sensible and it felt nice to be using the actual automation tech rather than some wrapper around it like Ranorex.

Closed by #336.