我需要在远程计算机上运行Selenium测试。我使用JUnit,Ant和Jenkins。
我在Internet Explorer中运行测试,我需要处理安全窗口。我使用AutoIt执行此操作。
我找到了如何远程执行AutoIt脚本:
Robotil robotil=new Robotil("*ip*", 6666);
robotil.invokeApplication("C:\\autoIT.exe");
当我登录远程计算机时执行它,但是当我注销时,看起来脚本没有执行,安全警报也没有被解除。
如何解决此问题?我应该在远程机器上设置一些参数吗?
有趣的是,使用相同的方式,我可以将文件从本地复制到远程计算机,然后我就会注销:
Robotil robotil=new Robotil("*ip*", 6666);
robotil.putFile("C:\\sourceFile.txt","C:\\destFile.txt");
也许有另一种方法可以远程执行AutoIT脚本?
AutoIt脚本:
Func GUIExit()
Exit
EndFunc
WinWaitActive ("Windows Security", "" ,1000000)
ControlClick ("Windows Security", "", "Cancel")
GUIExit()
提醒屏幕截图:
答案 0 :(得分:0)
我会尝试更改此代码:
Func GUIExit()
Exit
EndFunc
WinWaitActive ("Windows Security", "" ,1000000)
ControlClick ("Windows Security", "", "Cancel")
GUIExit()
对此:
While 1
If WinExists("Windows Security") Then
WinActivate("Windows Security")
WinWaitActive ("Windows Security", "", 30)
IF WinActive("Windows Security") Then Send("{ESC}")
EndIf
Sleep(1000)
Wend
你可以远程调用记事本或类似的东西吗?您确定远程计算机上存在路径C:\ autoit.exe吗?
答案 1 :(得分:-1)
问题是我使用过标准的Windows远程桌面客户端。我安装并运行其他脚本工作。