Selenium支持是否自动化到桌面应用程序

时间:2017-08-18 06:06:46

标签: java selenium selenium-webdriver desktop-application

我想使用selenium来自动化桌面应用程序,但是桌面应用程序不提供定位器和元素X路径,我如何在桌面应用程序中找到元素

6 个答案:

答案 0 :(得分:1)

不,使用硒我们只能自动化基于Web的应用程序。 Selenium没有提供任何自动化桌面应用程序的方法。对于桌面应用程序的自动化,我们可以使用其他工具,例如 AutoIT

请参阅此处了解一些想法 - > http://seleniumsimplified.com/2016/01/can-i-use-selenium-webdriver-to-automate-a-windows-desktop-application/

答案 1 :(得分:1)

直接回答您的问题, #sidebar { width: inherit; min-width: 250px; max-width: 250px; float: left; position:relative; overflow-y:auto; overflow-x:hidden; } @media screen and (max-width: 768px) { .row-offcanvas { position: relative; } .row-offcanvas-left { left: -250px; } .row-offcanvas-left.active { left: 0; } .sidebar-offcanvas { position: absolute; top: 0; } } main { overflow: auto; } No

由于您希望使用Selenium自动化桌面应用程序,Winium可以是满足您需求的最佳解决方案。

Winium:

Winium是一个新的开源框架,它基于Selenium,由3部分组成:

  1. 支持Windows应用程序的测试自动化。
  2. 支持Windows Phone操作系统上下文(主页按钮,通知栏,切换等)的测试自动化。
  3. 支持Windows Phone应用程序的测试自动化。
  4. 优点:

    如果您已经在使用Selenium WebDriver并熟悉其API,那么使用Winium很简单。

    缺点:

    由于它是一个新项目,很少有挣扎。它的API仍然不完整,与此类别中的其他工具的成熟度不同。

    底线:

    如果您正在考虑Winium,我的建议是等到它更加烘焙。

    其他资源:

    您还可以找到更多 Selenium doesn't support to automate Desktop Applications here

答案 2 :(得分:0)

我们使用selenium webdriver处理桌面应用程序有不同的方法。

下面是不同的实时技术

  1. AutoIT:AutoIT是处理基于窗口的应用程序的最佳选择
  2. Sikuli:Sikuli是基于图像的自动化工具。
  3. 更多参考访问以下链接

    https://sqa.stackexchange.com/questions/9254/can-i-use-selenium-to-do-desktop-application-testing

答案 3 :(得分:0)

不,您不能使用selenium自动化本机Windows应用程序。

但是你仍然可以通过autoit或sikuli实现它,而且这些工具对元素活动,处理和报告几乎没有限制。

我建议你看看RPA工具。现在市场趋势。您可以自动化任何类型的应用程序,如浏览器,本机窗口,Citrix。

考虑 uipath或蓝色棱镜。 我同意这些都不是开源的,但它应该支付。 Uipath你可以试用一些试用版。

Allt the best !!

答案 4 :(得分:0)

您不能使用selenium自动执行基于Windows Windows的应用程序。现在,这取决于您要使用开放源代码工具还是Microsoft工具。

开源工具:

  1. 汽车IT。它的速度非常快,并且其库可以与C#或JAva集成
  2. 基于Microsoft的工具: 编码的用户界面-它是最新的工具,可同时用于基于Windows和基于Web的应用程序。

答案 5 :(得分:0)

您可以使用以下工具:

  1. Winium https://github.com/2gis/Winium)用于Windows桌面自动化。 在这种情况下,您需要使用一些桌面检查工具,例如UISpy。 使用它的好处是,您必须了解硒中的方法和调用,该工具中也有相同的方法。

  2. AutoIT :如果测试脚本在Web上完成某些工作,而以后又想在台式机上执行某些操作,则可靠性较低。 AutoIT脚本会编译为一个可以从测试脚本触发的exe,但要记住AutoIT exe /脚本将从光标所在的位置开始执行。

  3. 我想您可以使用AWT类在台式机上做很少的事情,但是在开发完整流程时会花费大量时间。 (糟糕的想法,请不要这样做。)

    1. 不太确定,但在某些情况下,我已经看到 Sikuli (基于图像的自动化API)可以正常工作。(请看这个快速的示例https://www.guru99.com/sikuli-tutorial.html