2

我正在使用 CI Jenkins Tool 并尝试执行 AUTO IT Exe 文件。

我通过 Jenkins 尝试了以下选项,但没有任何效果。

  1. 执行命令行参数

  2. 批处理文件

  3. 蚂蚁文件

  4. Windows 运行器插件

4

2 回答 2

5

通过 Jenkins 在从站上运行 AutoIt 将取决于从站的启动方式。由于您使用的是 AutoIt,因此您使用的是 Windows。Windows 从站不能通过 SSH 或 Windows 服务启动。您必须使用 JNLP Web State 并且必须以特定方式启动它,AutoIt 才能正常工作。

要让 AutoIt 工作,从属设备必须首先让用户登录并在桌面上。您可以手动执行此操作,或将 Windows 设置为启动时自动登录。

进入桌面后,必须使用 JNLP Web 启动方法。这通常意味着通过 curl 从 Jenkins 服务器下载 slave.jar,然后使用 slave 启动 java 并指向 Jenkins 端的 jnlp 文件。最好,您希望通过调度程序自动执行此操作,但您也可以手动执行此操作。见这里的例子:https ://wiki.jenkins-ci.org/display/JENKINS/Launch+Java+Web+Start+slave+agent+via+Windows+Scheduler

一旦您以这种方式连接了从属设备,针对该从属设备运行 AutoIt 的作业应该可以工作。

注意:鉴于 AutoIt 的性质,您不能在主节点上运行它,因为主节点从不具有 AutoIt 所需的桌面访问权限。您可以在主节点上设置从代理来绕过限制。

于 2014-01-28T15:20:14.083 回答
-1

当您从 Jenkins 调用代码时,Invoked AutoIt 在从属/执行 Jenkins 机器中找不到所需的窗口的唯一原因。

解决方案:编写你的AutoIt脚本并手动调用它执行机器,处理窗口Pop。

于 2015-08-26T10:06:54.970 回答