UI自动化真的是WPF应用程序测试的好选择吗?

UI自动化真的是WPF应用程序测试的好选择吗?,wpf,testing,ui-automation,white-framework,uia,Wpf,Testing,Ui Automation,White Framework,Uia,当谈到自动化UI测试时,对话总是以UI自动化结束。 这是唯一的选择吗 我个人不喜欢它有一个主要原因——复杂性。它被设计为适用于所有类型的应用程序。这种普遍性从来都不是免费的。UIA引入了另一层抽象和一个相当复杂的API。标准模式是有限的。自定义控件支持需要大量的编码。我想知道为什么有人认为这是一个好的选择 WPF有一个出色且非常丰富的抽象,其中UI是视觉元素的层次树。这些元素公开了许多方法、事件和属性。树支持各种引用方式(例如相对源语法)。我们在UIA失去了所有的力量。为了什么?与旧式应用程序和

当谈到自动化UI测试时,对话总是以UI自动化结束。 这是唯一的选择吗

我个人不喜欢它有一个主要原因——复杂性。它被设计为适用于所有类型的应用程序。这种普遍性从来都不是免费的。UIA引入了另一层抽象和一个相当复杂的API。标准模式是有限的。自定义控件支持需要大量的编码。我想知道为什么有人认为这是一个好的选择

WPF有一个出色且非常丰富的抽象,其中UI是视觉元素的层次树。这些元素公开了许多方法、事件和属性。树支持各种引用方式(例如相对源语法)。我们在UIA失去了所有的力量。为了什么?与旧式应用程序和web的兼容性?实际上,谁会需要呢?万事通,一事无成

像Snoop这样的工具可以将自己注入到正在运行的应用程序中,并完全控制它。它们可以更改控件属性的值并引发事件。这还不够吗?不。您希望您的测试像用户一样与UI交互——使用鼠标和键盘。但这是另一个可以解决的问题


所以我想知道,UIA的乐趣有什么我不懂的吗?

9个月后,我在F中找到了一个DSL,用于使用UI自动化编写测试脚本;)一年半后,用C#重写了它,使用了一个双API,允许遍历UI自动化树或WPF可视化树。