我熟悉 nunit 用于业务层的单元测试,但是我现在希望自动化 win forms gui 层的测试。

我见过 瓦丁 watin 记录器,用于通过访问控件并使其自动化来自动化 Web 应用程序测试。然而,我正在努力寻找 Windows 窗体(用 C# 或 vb.net 编写)的 watin 等效项,最好是开源的。

是否存在一种或所有产品都基于记录鼠标和键盘按下情况?

更新: 我看过这个 白色的博客文章 这似乎就是我正在寻找的东西。该博客文章提出了一些问题,但由于白色仅在 0.6 版本中,这些问题可能会得到解决。如果其他人使用白色或任何其他颜色进行比较,请感兴趣。

有帮助吗?

解决方案

查看 http://www.codeplex.com/white http://nunitforms.sourceforge.net/ 。我们成功地使用了White项目。

上一个问题的相同答案

修改

White项目已经移动,现在位于 GitHub 上,作为TestStack的一部分。

其他提示

AutomatedQA的TestComplete 是一个很好的测试应用程序,可以自动执行GUI测试。它不仅支持Windows窗体,因此您可以将其重用于其他应用程序。它不是开源的,这是我发现的最好的。我还没有看到相当于WatiN的开源。它确实有一个免费试用版,因为你决定是否喜欢它。我采用它的主要原因是,与其他测试应用相比,它确实具有成本效益。

作为一种新的替代方案,我可以为您提供FlaUI( https://github.com/Roemer/FlaUI )。它基本上是一个完整的白色重写,具有更多的功能和干净的代码库。

据我所知, White 是微软 UI自动化框架。我编写了一个类似的层,我们在项目内部使用它,效果很好。因此,怀特确实值得一看

Microsoft已经发布了UI自动化的源代码,因此如有必要,您应该能够在整个堆栈中进行调试。

非常酷的是,在许可证成本方面,您可以扩展并运行任意数量的计算机来执行。

我们在VSTS中运行并将我们的结果链接到需求,但您可以使用c#express和nUnit并获得一流的工具和语言,而且成本很低。

以下是 MSDN 杂志上有关自动测试代码的一些链接:

  • 使用 UI 自动化 灭虫者 2007年3月
  • 使用PowerShell 测试运行 2007年12月
  • 测试器,一个用于记录鼠标点击和击键、然后回放和程序检查行为的实用程序。非常适合非托管代码。使用窗口句柄,因此可能不适用于托管代码。 灭虫者 2002 年 3 月。

您可以查看Microsoft UI Automation 框架。从版本3.0开始,这已包含在.NET中。这实际上是White框架使用的内容。

您可以考虑使用编码UI ,Visual Studio内置功能和UI自动化的一部分:

  

通过其用户界面驱动应用程序的自动化测试   (UI)称为编码的UI测试(CUIT)。这些测试包括   UI控件的功能测试。他们让你验证了   整个应用程序,包括其用户界面,正在运行   正确。编码的UI测试在有的地方特别有用   用户界面中的验证或其他逻辑,例如在web中   页。它们还经常用于自动化现有手册   测试

     

[...]典型的发展   经验可能是一个,最初,你只是建立你的   应用程序(F5)并单击UI控件以验证   事情正常。然后,您可能决定创建一个编码   测试,以便您不需要继续测试应用程序   手动。取决于正在测试的特定功能   您的应用程序,您可以编写功能测试的代码,或   对于可能包含或可能不包括测试的集成测试   UI级别。如果您只是想直接访问某些业务逻辑,   你可以编写单元测试代码。但是,在某些情况下,它   可能有益于包括测试各种UI控件   你的申请。编码的UI测试可以自动化初始化(F5)   方案,验证代码流失不会影响功能   你的申请。

阅读更多内容: https://docs.microsoft.com/en-us/visualstudio/test/use-ui-automation-to-test-your-code

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top