自动化测试--使用AUTOIT进行图片自动上传等功能
一、何为AutoIt及其作用?
AutoIt是一个使用脚本语言的免费软件,本章节我们将AutoIt应用于UI自动化测试中,使用此软件我们可以方便的模拟鼠标,键盘,窗口等操作。
当我们在编写自动化脚本的时候,比如下图中,我们要上传一张图片,我们编写如下脚本定位到选择图片:
driver.findElement(By.id("file")).click();
此时跳转到如下界面,程序就停止了,无法上传图片,因为selenium不支持调用操作系统自身的弹框,所以selenium无法完成图片的上传,这就是我们为什么使用AutoIt工具的原因了。
二、AutoIt的下载
1)百度搜索AutoIt,进入AutoIt官网
三、使用AutoIt小工具进行图片自动上传
AutoIt安装成功后,会用如下几种工具,可在所有程序->AutoIt中查看。
使用AutoIt的大致流程如下:
1)使用AutoIT Window Info用来识别Windows控件,根据识别的控件信息编写脚本;
通过拖拽红色框框中的工具,选择你想要知道的控件的信息
2)通过SciTE Script Editor来编写脚本
其中,各方法如下使用:
(1) ControlFocus ( "窗口标题", "窗口文本", 控件ID) 设置输入焦点到指定窗口的某个控件上
(2)WinWait ( "窗口标题" [, "窗口文本" [, 超时时间]] ) 暂停脚本的执行直至指定窗口存在(出现)为止
(3)ControlSetText ( "窗口标题", "窗口文本", 控件ID, "新文本" ) 修改指定控件的文本
(4)Sleep ( 延迟 ) 使脚本暂停指定时间段
(5)ControlClick ( "窗口标题", "窗口文本", 控件ID [, 按钮] [, 点击次数]] ) 向指定控件发送鼠标点击命令
3)通过Compile Script to.exe将脚本编译成可执行文件,将此文件放到所对应的工程目录下(方便调用)
4)通过Run Script来执行AutoIt的脚本信息(ps:此时操作系统自身弹框需打开)
四、如何在selenium下调用此脚本完成自动化测试
其中,Runtime.getRuntime().exec("外部文件");用于调用系统外部某个程序文件,他会生成一个新的进程去运行调用的程序。