3

我正在尝试在 c# 中自动化 gui。这与浏览器自动化相同吗。如何启动 ui 自动化

4

7 回答 7

6

如果您使用的是 WPF,Microsoft 有一个非常详细的 UI 自动化库。

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

我环顾四周,但找不到 WinForms 的等价物。

于 2010-01-20T11:37:53.207 回答
4

您可以使用 Microsoft 的 UI 自动化库,但它不是很有趣。“白色”是一个更好的选择......见: http: //www.codeplex.com/white

编辑:

“White”项目的新网址,因为它已移至 GitHub 上的 TestStack:https ://github.com/TestStack/White

于 2010-03-07T21:16:09.370 回答
2

WiPFlash是一个很好的、易于使用的开源包装器,位于 Microsoft 的 UI 自动化库之上。但它们受到底层 Microsoft 自动化结构的限制。

于 2011-04-01T04:04:17.483 回答
2

FlaUI是“White”库的一个很好的替代品,它基于 Microsoft 的原生 UI 自动化库。

于 2019-04-18T14:52:43.647 回答
2

9 年后, Appium是一个不错的选择,也是 Microsoft 的参考,因为CodedUI已过时。Microsoft 为 Appium 构建了WinAppDriver。您也可以只使用 WinAppDriver 来测试您的 gui。你需要 Appium,就在你想做 contionouos 集成的时候。

区别:
Teststack.White 是一个高效的测试框架。它不需要像 WinAppDriver (Appium) 那么多的时间来完成测试,而且它很容易在你的测试项目中实现。但支持不如 WinAppDriver。Teststack.White 作为示例仍然不支持 UWP(也许没有人想用 UWP 进行开发:P)。另一方面,您需要 Windows 10 或 Windows Server 2016 才能使用 WinAppDriver。两者都有一个简单的测试实现,但你需要设置一些 JSON 值,以获得与 WinAppDriver 的 http 连接。
至少带有 Appium 的 WinAppDriver 有更多的可能性,但 TestStack.White 很容易实现。

于 2019-06-04T20:16:54.030 回答
1

如果您的 GUI 使用任何第三方 Windows 控件,如 Devexpress 控件或 Telerik 控件,请小心。

MS UI 自动化很难找到那些花哨的网格、可爱的菜单和漂亮的图标。

谈到 TestStack.White,它使用 MS UI 自动化作为基石,因此在定位详细的 GUI 元素时也会遇到同样的问题。

您将知道何时需要逐行操作网格,但 UI 自动化或 TestStack.White 最多只能返回表格对象,然后您会发现您在项目开始之前的研发努力都白费了。我就是这样吸取教训的,但现在我是专家。

于 2017-10-27T03:59:03.517 回答
0

http://msdn.microsoft.com/en-us/library/ms747327.aspx像 Alastair Pitts 指出的可以使用。据我所知,它应该适用于任何自动化任务——只要 Windows 将您的应用程序使用的控件识别为标准控件或具有自动化支持的控件。几乎所有主要的控制供应商都应该是这种情况。并且肯定是 MFC、Win32、WinForms,可能还有 WPF 和 Silverlight。

您可以通过启动 Spy++ 并查看它显示的内容来了解​​您在做什么(反对)。

您可能还想听取其他想法,使用 White(开源)或 Rannorex(商业)等工具。

于 2011-05-17T17:59:35.003 回答