Speaking of automating a UI testing session, UI automation always ends. Is this the only option?
I personally do not like this for one main reason - complexity. It is designed to be universal for all types of applications. Such versatility is never free. UIA introduces another layer of abstraction and a rather sophisticated API. Standard templates are limited. Support for user controls requires a lot of coding. I wonder why someone considers this a good option?
WPF has a brilliant and very rich abstraction, where the user interface is a hierarchical tree of visual elements. These elements reveal many methods, events, and properties. The tree supports various handling methods (for example, relative source syntax). And we lose all this at UIA. For what? For compatibility with old school apps and the network? Well, realistic, who needs it? Jack of all professions is not the master.
Tools such as Snoop can be embedded in a running application and gain full control over it. They can change control property values ββand raise events. Isn't that enough? Nope. You want your test to interact with the user interface as a user using the mouse and keyboard. But this is another problem that can be solved.
So, I wonder if there is something that I donβt get from UIA joy?
Pasho source share