WPF中的UI自动化

本文关键字:自动化 UI 中的 WPF | 更新日期: 2023-09-27 18:17:26

谁能帮助我如何在WPF做UI自动化?我想检查Grid的操作

WPF中的UI自动化

如果您只想自动化WPF而不是WinForms,请查看Telerik的免费框架。如果你想要更多的功能,如录制和播放,还有一个付费版本。

两个支持WPF和WinForms控件自动化的开源c#库是:白色

  • 我用过这个,发现它并不总是可靠的。

QAliber

  • 我用过这个,发现它很好,但需要工作。

它们都是开源的,所以它们会告诉你如何使用微软的API,你可以修改它们来满足你的需要。

我也使用过Coded UI Test和Ranorex,但它们都是$$,我不关心记录和播放,因为我觉得这是一个维护问题。(尽管QAliber确实有录制和播放功能,White也有一个alpha质量的录音机。)

当然你也可以直接从微软的API中获取。

使用Visual Studio内建的工具-编码UI测试:

http://msdn.microsoft.com/en-us/library/dd286681.aspx

有两种方法可以做到这一点:记录和生成代码(往往是一个很好的起点,但通常不会给你可重复的测试),并通过UI对象树手动编码它们。

我最终选择了第二个选项,因为我更喜欢自己编写的代码,而不是记录器功能提供的代码。

你可以试试PROJECT SIKULI:

Sikuli是一个自动化和测试图形用户的可视化技术使用图像(屏幕截图)的界面(GUI)。Sikuli包括SikuliScript(用于Jython的可视化脚本API)和Sikuli IDE用于编写可视化脚本的集成开发环境截图。Sikuli Script自动执行您在没有内部API支持的屏幕。你可以通过编程控制网页,Windows/Linux/Mac OS X桌面应用程序,或甚至是在模拟器上运行的iPhone或android应用程序VNC。

这里有一篇很好的博客文章可以让你开始使用UI自动化:

使用Prism 4.0进行Silverlight UI自动化测试

它是基于Silverlight的,但是Silverlight非常接近WPF,并且所涉及的UI自动化概念完全相同。