2010-06-01 51 views
4

我打算自动化在Microsoft Visual C#中开发的GUI的一些功能。Windows GUI自动化

我是新来的自动化与GUI。如果您分享有关GUI自动化和一些可用于自动化的工具的经验,会很高兴。

我计划,以实现一些GUI

回答

7

我最近做了一个研究上是完全相同的主题的功能性开发一些programms的/脚本。我还没有找到一个理想的工具。下面是我看着工具:

  • QTP。这是最有名的,所以,你可以在网上找到你的问题的答案。它支持函数库,对象库和各种技术。由于不同的因素,在QTP中开发脚本很慢。许可证的成本很高。使用VBscript(pah!)
  • 编码的UI测试。它是Visual Studio 2010 Premium和Ultimate版本的一部分。也花费$$$。提供功能库和对象存储库功能。你需要对编程有一些了解。使用C#开发测试(VB作为alt)。 Microsoft严格建议使用他们的刻录机来生成测试。虽然,如果您有自动化方面的经验,但您明白,仅使用记录器对于开发良好的测试是不可能的。所以你需要详细了解生成的代码。它会产生大量的代码。无论如何,这很好。
  • 红宝石 + AutoIt。成本0 $。我喜欢使用Ruby + Rspec + Watir来自动化Web界面。非常可定制的,快速的学习,开发和执行。虽然,不能使Ruby + Rspec在.NET中工作得足够好。我试图使用AutoIt来访问WindowsForms,但很难调试和搜索为什么不起作用。
  • Ranorex。我没有看太多。它看起来不错,类似于QTP,花费$$$。我没有时间更紧密地使用它,并决定不使用它,因为我不知道在实际自动化过程中会出现什么问题(并且我已经有了QTP许可证)。
4

我已经有了一些成功的免费,开源White。它的支持是有限的,但文档有一个很好的指导部分,所以你很快就会知道它适合你。

8

为了自动化Windows操作系统本身,免费的AutoIT使用BASIC类型的语法来实现自动化。它不是开源的,但开发源自AutoHotkey,它是开源的。这两者中的任何一个都可以用于Windows GUI自动化,而不需要太多努力。

我认为微软会建议你使用Windows PowerShell,这是一个支持本地和远程计算机的WMI和COM的任务自动化框架。 Powershell是免费的。请参阅本指南performing Windows® UI automation tasks

您用Windows,Shell和Automation标记了此问题。尽管AutoHotkey具有社区对C#的支持,并且Powershell是.NET脚本编程语言,但我没有使用C#提出的这些建议。