selenium借用AutoIt 实现上传文件

来源:互联网 发布:淘宝代销运费怎么算 编辑:程序博客网 时间:2024/05/02 16:45
1、AutoIT介绍
     AutoIT是一个类似脚本语言的软件,利用此软件我们可以方便的实现模拟键盘、鼠标、窗口等操作,实现自动化。
2、实现原理
     利用AutoIT编写合适的脚本,然后将脚本编译成可执行文件,在自动化实现时,直接调用此脚本实现文件上传。
     备注:编写脚本和编译,需要借助AutoIT提供的工具,但是脚本编译成可执行文件后,可以直接使用,不再需要安装AutoIT。
3、AutoIT下载并安装
  •    下载链接:https://www.autoitscript.com/site/autoit/
  •     AutoIT安装成功后,可以在开始菜单下看到AutoIT的所有工具,如下图所示:

AutoIT Window Info用来识别Windows控件,根据识别的控件信息编写脚本;
Complie Script to .exe,用来将利用AutoIt编写的脚本,编译成可执行文件;
Run Script 用来执行AutoIT的脚本信息;
SciTE Script Editor用来编写AutoIt脚本。
4、使用步骤:
    1)打开AutoIt Window Info 工具:用来获取windows控件的信息,如文本输入框、按钮等;界面如下图:
用鼠标拖住Finder Tool(图中蓝色的圈圈)到需要识别的控件上,信息会显示Basic Window info区域(即红色框中的部分);
   2)运行SciTE Script Editor编写脚本:根据上述识别的信息,编写相关脚本;如下图实例:
   
保存编写后的脚本文件:
       WinActivate("打开");
ControlSetText("打开", "", "Edit1", "D:\Tulips.jpg" );
Sleep(2000);
ControlClick("打开", "", "Button1");
   附注:
  •     ControlFocus ( "title", "窗口文本", controlID)   设置输入焦点到指定窗口的某个控件上;
  •     WinWait ( "title" , "窗口文本" , 超时时间 )  暂停脚本的执行直至指定窗口存在(出现)为止;
  •     ControlSetText ( "title", "窗口文本", controlID, "新文本" )   修改指定控件的文本;
  •     Sleep ( 延迟 )   使脚本暂停指定时间段;
  •     ControlClick ( "title", "窗口文本", 控件ID , 按钮 点击次数 )   向指定控件发送鼠标点击命令;

    其中,titleAutoIt Window Info识别出的Title字段,controlIDAutoIt Window Info识别出的ClassInstance的拼接,如上图拼接后的结果应为:Button1;

3)打开Complie Script to .exe工具,将AutoIT脚本编译成exe可执行文件。如下图:


点击“Browse”选择保存的脚本文件,点击“Convert”将其生成exe文件。   

4) java中直接调用生成的exe文件实现selenium自动化;
  Runtime.getRuntime().exec("testFiles/upladFile.exe");    //参数值被生成的exe文件地址  

0 0