![]() |
1
2
一般来说,自动化用户界面是一种危险的做法。对于一个短期的问题来说,它是一个有用的黑客:我发现自己在某些情况下使用autohotkey来运行一些乏味的任务…但是,只有当任务不值得编写代码来实现更改时(即一次15分钟的任务)。 否则,由于某些屏幕响应滞后、UI不一致等原因,您可能会遇到运行不一致的问题。大多数应用程序都有可用的API,如果不使用它,将比在99%的情况下获取和使用它要痛苦得多。 在不幸但可能的情况下,没有用户界面,您只能进行屏幕抓取/操作,执行自动测试的工具可能和您所得到的一样好。它允许你 验证 应用程序的状态(在某种程度上),因此可以在其中建立一些安全网。此外,我还将为这项任务指定一个工作站…把键盘和鼠标锁在远离好奇用户的地方。(远程桌面或VNC风格的连接很好地解决了这一问题:您可以启动进程并断开连接,使其不受篡改。) 然而,我认为这种方法只是不顾一切的最后手段。操作一个API是远、远、远、远(我在其中得到了足够的“fars”吗?)更可持续。 |
![]() |
2
0
如果我理解正确,你想做自动化 处理 使用某种工具在给定的软件系统中执行预先定义的操作列表。这与自动化不同 测试 . 我强烈建议您避免使用用于测试的工具来执行处理。许多主要的软件系统都有公共的API,您可以使用这些API执行操作,而无需直接的用户交互。这是一种更加健壮和可靠的自动化流程调度方法。请联系您正在使用的软件的供应商,有时可以根据要求提供API。 |
![]() |
3
0
Godeke和Dave是绝对正确的,如果可以的话,API是最好的路径。然而,实际上这有时是不可能的,您必须走GUI自动化路线。除了前面提到的用于运行自动化的专用工作站之外,我建议在一些审计跟踪中进行编码,以便在出现问题时更容易调试或回溯。批处理自动化应该保存一个详细的日志,记录处理的内容、处理的时间以及处理的方式。您应该设置它,以便记录本身(在本机应用程序中)反映它是通过自动化更新/处理的。例如,如果每个记录都有一个可更新的注释/注释字段,自动化应该向该字段添加文本,例如“由自动化用户处理,2009-02-25,10:05:11 AM,帐户字段从‘abc123’更改为‘def456’”,这样,用户在GUI中手动提取记录时,自动化的mod将很容易看到。 |