有什么比 Sikuli 更好的工具可以在 Windows 7(或者最好是多平台)上用于屏幕自动化[关闭]

2024-02-20

我在用着Sikuli http://sikuli.org/用于屏幕自动化。即根据 GUI 元素在屏幕上的外观进行单击。这可行,但 Sikuli 对我来说有一个主要缺点:

  • 每个脚本的启动速度都很慢(因为每次都会加载整个 JVM)。

此外,自去年以来,Sikuli 并没有太多发展,因此我正在寻找替代自动化工具。我需要的大票是屏幕意识:该工具必须“查找”屏幕上的某些 UI 元素,然后将鼠标移至那里并单击。

有没有比 Sikuli 更快、维护更好的工具的建议?


如果你想在 Windows 下自动化任何东西,我会推荐你Automa http://www.getautoma.com/- 新的轻量级 GUI 自动化工具。它只是“查找”UI 元素 - 您所需要做的就是提供人类用户看到的名称。它实际上比 Sikuli 更容易使用 - 您无需截取任何屏幕截图。例如,如果您想自动登录 Windows Live Messenger,可以运行以下脚本:

start("messenger")
write("[email protected] /cdn-cgi/l/email-protection", into="Email address")
write("secret", into="Password")
click("Sign in")

或者,类似地,为了输入凭据并自动登录 Facebook,您所需要做的就是执行以下命令:

start("firefox")
write("facebook.com", into="Location")
press(ENTER)
write("[email protected] /cdn-cgi/l/email-protection", into="Email or Phone")
write("secret", into="Password")
click("Log in")

该工具适用于大多数 Windows 应用程序(包括 Web 浏览器),无论它们是用什么技术编写的。它是用 Python 编写的,可以通过可导入的 api 库在任何 Python 应用程序中使用。

关于 Automa 与 Sikuli:Automa 与 Sikuli 一样高级,但不需要屏幕截图。这有几个优点:

  • Automa 脚本更容易存储在版本控制系统中。
  • Automa 脚本纯粹基于文本,这使得它们更容易维护:想象一下标签在某处发生变化。此标签可能会出现在多个 Sikuli 屏幕截图中,然后您必须重新拍摄这些屏幕截图。使用 Automa,您所要做的就是跨文件进行简单的搜索和替换。
  • 对于用户界面的变化来说,它更加稳定 - 想象一下颜色变化或按钮仅移动几个像素。
  • 其他不错的功能,例如能够在应用程序存在之前编写脚本/测试 - 您始终可以编写一个脚本,说单击“此处”,键入此内容,单击“那里”,已经从功能/程序的规范中获得。有了屏幕截图,这是不可能的。

披露:我正在从事Automa http://www.getautoma.com/.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有什么比 Sikuli 更好的工具可以在 Windows 7(或者最好是多平台)上用于屏幕自动化[关闭] 的相关文章

  • 检查Windows电源管理是否关闭了显示器

    如何在 Windows 7 和 XP 中以编程方式检查 Windows 电源管理 是否已关闭显示屏 如果能收到一个活动就更好了 我不认为 XP 可以做到这一点 Windows 7 中有各种与电源管理相关的好东西 这Windows API 代
  • Windows 睡眠功能极慢

    我正在通过 Windows h 使用 Sleep 命令制作一个程序 并且在 Windows 10 而不是 Windows 7 上运行我的程序时遇到了令人沮丧的差异 我将我的程序简化为下面的程序 它与我的更复杂的程序表现出相同的行为 在 Wi
  • 如何强制我的 .NET 应用程序以管理员身份运行?

    一旦我的程序安装在客户端计算机上 如何强制我的程序以管理员身份运行Windows 7的 您需要修改嵌入到程序中的清单 这适用于 Visual Studio 2008 及更高版本 项目 添加新项目 选择 应用程序清单文件 改变
  • ReportViewer 的打印按钮与 IE 10 不兼容?

    我已经寻找这个问题的答案两天了 我们有一个使用 ReportViewer 9 的应用程序 但是 单击 IE10 中的打印按钮会导致浏览器停止工作 使用 调试 或 关闭程序 按钮 其他一切似乎都工作正常 我们尝试使用 ReportViewer
  • Sublime Text 2 的 git 提交错误[重复]

    这个问题在这里已经有答案了 我正在 Udacity 上学习 如何使用 Git 和 GitHub 课程 我正在按照示例进行操作 但遇到了问题 我自己尝试通过谷歌搜索和反复试验来解决问题大约两个小时 我认为是时候在 StackOverflow
  • Qt 创建者 4.8.4。 Windows 7 - 64 位安装

    我在 QT 方面遇到了一些困难 我需要在学校使用它来完成一些 GUI 应用程序 我最近完成了以下步骤 1 mingw get inst 20120426 exefrom 来源锻造 http sourceforge net projects
  • 在 Windows 7 上安装 Python Fabric 时出现问题

    我正在尝试使用以下指南在 Windows 7 上安装 Python Fabric在 Windows 上安装 Python 和 Fabric http www jonnyreeves co uk 2011 08 getting python
  • while 循环元素状态 cypress

    我有一个问题 我想单击一个按钮直到它消失 但次数可能会有所不同 所以我想检查可见性状态 当可见 true时单击按钮 当可见 false时结束测试 但问题是我不知道如何循环从获取元素到末尾的所有链 单击按钮一次 由于中断而停止 如果我删除中断
  • 密码保护 IIS 7.5 中的 ASP.NET Web 应用程序

    我在 Windows 7 上使用 IIS 7 5 为我的 asp net 网站提供测试服务 为了阻止随意的人查看我的网站 我希望 IIS 在提供任何服务之前需要用户名和密码 我已尝试在应用程序上禁用匿名身份验证并启用 Windows 身份验
  • C# 识别屏幕数量?

    如何在 C 中使用一个函数来运行窗口识别 该函数将在屏幕上显示数字 1 2 就像我们右键单击屏幕 属性 然后转到 屏幕分辨率 和单击 识别 即可显示数字 我们可以在 C 中做到这一点吗 是的 看看Screen类 http msdn micr
  • C# 以非管理员身份在 Windows 7 上的 SpecialFolder.LocalApplicationData 中创建目录时出错

    我收到错误 访问路径 LocalApplicationData MyProgram 被拒绝 当尝试为我的日志文件创建目录时 这是我以非管理员用户身份运行程序时的情况 Directory CreateDirectory System Envi
  • 在 Windows 7 上运行的 Java 应用程序如何选择要使用的网络适配器

    你好 我正在为运行 Windows 7 的设备 平板电脑 编写一个应用程序 该应用程序是用 java 编写的 应用程序需要知道哪个网络适配器可用 WIFI 3G 等 是否有一个类似于为 android 开发的 java 库 android
  • Java Toolkit 获取第二个屏幕尺寸

    我的计算机上插入了两个屏幕 想知道 JFrame 或 Toolkit 中是否有方法可以检测窗口位于哪个屏幕上 我有这个代码 java awt Toolkit getDefaultToolkit getScreenSize 它获取主屏幕的屏幕
  • 如何在 React Native 中截屏测试?

    我想使用屏幕截图测试我的 React Native 应用程序 UIAutomation javascript 文件将由以下命令执行fastlane https fastlane tools 并且应该向我提供我需要的所有子视图 这部分工作正常
  • 如何选择在 IOS UIAutomation 的警报消息中选择哪个按钮

    当警报有 是 和 否 按钮时 如何单击警报消息按钮 我尝试了这样的方式 target frontMostApp alert buttons buttonName tap target frontMostApp alert buttons i
  • 三星 Galaxy Note 上的布局

    我有一个奇怪的问题 只出现在 Samsung Galaxy Note 上 我有横向和纵向布局 正常和大 如下 http developer android com guide practices screens support html h
  • 从 java 与 C++ 程序通信

    我想从 java 中执行外部 exe 程序 exe 是一个 CLI 应用程序 它在运行时 scanf 中获取输入并根据输入进行输出 我可以使用 java 调用要执行的程序 Process p Runtime getRuntime exec
  • 如何在wpf中打印屏幕截图

    首先我英语说得不太流利 反正 我正在尝试这样做 然而这还不是第三天 我现在正在做的是屏幕捕获后的程序屏幕打印 我参考这段代码 https social msdn microsoft com Forums windows en US 0623
  • 安装python启动文件

    我如何安装pythonstartup文件 以便它在命令上运行 例如python myfile py 我尝试将其安装到我的 home myuserUbuntu的目录 但它说我没有足够的权限 此外 不同的地方交替说它应该全部大写或全部小写 前面
  • 访问外部窗口句柄

    我当前正在处理的程序有问题 这是由于 vista Windows 7 中增强的安全性引起的 特别是 UIPI 它阻止完整性级别较低的窗口与较高完整性级别的窗口 对话 就我而言 我想告诉具有高完整性级别的窗口进入我们的应用程序 它在 XP 或

随机推荐