AutoIt的在自动化测试中的使用

上一篇 / 下一篇  2016-02-24 11:05:57 / 个人分类:AutoIt

在运用WebDriver进行自动化测试时,由于WebDriver自身的缺陷,对于上传文件时Windows弹出的文件选择窗口无法控制,通过在网上查找资料锁定使用AutoIt来控制文件上传窗口。

1Selenium点击打开,打开选择文件窗口

2AutoIt在弹出另存为窗口输入指定路径,单击保存

;ControlFocus("title","text",controlID) Edit1=Edit instance 1

ControlFocus("打开", "","Edit1")

 

; Wait 10 seconds for the Upload window to appear

  WinWait("[CLASS:#32770]","",10)

 

; Set the File name text on the Edit field

  ControlSetText("打开", "", "Edit1", "D:\linux.txt")

  Sleep(1000)

; Click on the Open button

  ControlClick("打开", "","Button1");

 

3、使用autoIt转换为EXE格式的可执行文件

使用javarunTime类调用

Runtime.getRuntime().exec("E:\\test\\download.exe");

 

AutoIt工具的使用方法:

1、下载AutoIt之后双击Au3Info.exe打开定位器,如下图:(不能上传图片,就不传图片了吧)

2、打开文件选择窗口页面

3、在AutoIt的定位器页面按住Finder Tool拖到文件选择窗口的“打开”按钮上,定位按钮的相关属性

依次定位保存按钮,使用ControlFocus方法,定位编辑框(文件名)title另存为classEditinstance

然后使用ControlSetText方法输入保存路径,定位保存按钮,使用ControlClick方法单击保存按钮

 

整体上传代码如下:(List<String> filepath上传多个文件  

//处理上传文件窗口

   publicvoidattachmentWindowByautoIT(List<String> filepath) {

       String execute_file = System.getProperty("user.dir");

       execute_file+="\\driver\\upload_x86.exe";

       String cmd ="\""+execute_file+"\"";

       String cmdline ="";

       for(String s:filepath){

           cmdline+=" \""+s+"\"";         

       }

       cmd=cmd+" \""+cmdline+" \"";

      

      try{

           Process p = Runtime.getRuntime().exec(cmd);

           p.waitFor();

       }catch(Exception e) {

           e.printStackTrace();

       }

    }

Auto的脚本如下:

ControlFocus("打开","","Edit1")

WinWait("[CLASS:#32770]","",3);

ControlSetText("打开","","Edit1",$CmdLine[1])

ControlClick("打开","","Button1")


TAG:

 

评分:0

我来说两句

Open Toolbar