Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 有没有办法自动化windows窗体测试?_C#_.net_Vb.net_Winforms_Automated Tests - Fatal编程技术网

C# 有没有办法自动化windows窗体测试?

C# 有没有办法自动化windows窗体测试?,c#,.net,vb.net,winforms,automated-tests,C#,.net,Vb.net,Winforms,Automated Tests,我熟悉nunit用于业务层的单元测试,但是我现在希望自动化win forms gui层的测试 我见过watin recorder,它通过访问控件并使其自动化来自动测试web应用程序。然而,我正在努力为windows窗体(用c#或vb.net编写)找到一个watin等价物,最好是开源的 是否存在一个或所有产品都基于录制鼠标和键盘按键 更新:我已经看过了,它似乎就是我要找的那种东西。这篇博文提出了一些问题,但由于white仅在0.6版中出现,这些问题可能会得到解决。如果其他人使用白色或任何其他颜色进

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

我见过watin recorder,它通过访问控件并使其自动化来自动测试web应用程序。然而,我正在努力为windows窗体(用c#或vb.net编写)找到一个watin等价物,最好是开源的

是否存在一个或所有产品都基于录制鼠标和键盘按键

更新:我已经看过了,它似乎就是我要找的那种东西。这篇博文提出了一些问题,但由于white仅在0.6版中出现,这些问题可能会得到解决。如果其他人使用白色或任何其他颜色进行比较,请感兴趣

是一个很好的自动化GUI测试的测试应用程序。它不仅支持Windows窗体,还支持其他应用程序。它不是开源的,这是我发现的最好的。我还没有见过一个与WatiN相当的开源软件。它是免费试用的,由你决定是否喜欢。我选择它的主要原因是,与其他测试应用程序相比,它确实是经济高效的。我们成功地使用了White项目

前一个问题的相同答案

编辑


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

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

据我所知,它是微软框架顶部的一个抽象层。我写了一个类似的层,我们在项目内部使用它,它工作得很好。所以怀特一定值得一看

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

真正酷的是,有了许可证成本,您可以扩展并运行任意数量的机器来执行


我们在VST内部运行,并将结果与需求联系起来,但您可以使用c#express和nUnit,获得一流的工具和语言,而且成本很低。

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

  • 使用UIAutomation 2007年3月
  • 使用PowerShell 2007年12月
  • Tester,一个用于记录鼠标点击和击键,然后回放的实用程序&程序检查行为。非常适合非托管代码。使用windows句柄,因此可能无法很好地用于托管代码。2002年3月
      作为一种新的选择,我可以给你一个FlaUI()。它基本上是对white的完全重写,具有更多功能和干净的代码库。

      Microsoft建议使用:

      Windows应用程序驱动程序(WinAppDriver)是要支持的服务 Windows应用程序上类似于Selenium的UI测试自动化。这项服务 支持测试通用Windows平台(UWP)、Windows窗体 (WINFALSE)、Windows演示基础(WPF)和经典窗口 Windows 10 PC上的(Win32)应用程序



      以前,建议将Visual Studio内置功能和UI自动化的一部分用于应用程序UI测试(现在不推荐使用该功能)):

      用于自动化UI驱动功能测试的编码UI测试是 不赞成。Visual Studio 2019是编码UI测试的最后一个版本 将提供。我们建议使用Selenium测试web应用程序 和带有WinAppDriver的Appium,用于测试桌面和UWP应用程序。 考虑使用XAMARIN UITEST测试iOS和Android应用程序 NUnit测试框架

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


      阅读更多信息:

      是一种类似于Selenium的UI测试自动化服务,用于测试Windows应用程序,包括Windows窗体应用程序。它可以与测试自动化框架一起使用。

      您也可以使用Winium(),它可以在Windows 10以外的多个Windows平台上工作,与Selenium类似,具有支持远程控制应用程序的额外功能。

      它是deprecated@ChristopheChenel:谢谢你的留言,我更新了答案。