AutoItLibrary 库的关键字

AutoItLibrary 库的关键字

7.2.1 Run关键字

按F5 查看Run关键字的说明,如下图:

 

Run 关键字用来启动程序,主要有以下3种方式:

7.2.2 Win Close 关键字

按F5 查看Win Close关键字的说明,如下图:

 

Win Close 关键字用来关闭程序。

 

strTitle 是指打开窗口的标题。

7.2.3 Control Click 关键字

按F5 查看Control Click关键字的说明,如下图:

 

Control Click 关键字发送控制命令给鼠标点击。

7.2.4 Send 关键字

按F5 查看 Send 关键字的说明,如下图:

 

Send 关键字模拟按钮发送到窗口。

 

“123456”会被输入到计算器的计算框内。

对于非数字的键盘输入用“{}”花括号括起来。“{F1}”表示键盘F1;“{+}”表示键盘“+”加号;“{=}”表示键盘“=”等号。

组合键Alt+2:

 

执行{ALTDOWN}表示按下键盘Alt 键,{ALTUP}表示松开Alt 键。

组合键Ctrl+a、Ctrl+x、Ctrl+v:

执行{CTRLDOWN}表示按下键盘Ctrl 键,然按a 键“全选”,按x 键“剪切”,按v 键“粘贴”。

7.2.5 Wait For Active Window

按F5 查看 Send 关键字的说明,如下图:

 

Wait For Active Window 关键字会等待窗口显示出来。

7.2.6 Mouse Click 关键字

按F5 查看 Mouse Click 关键字的说明,如下图:

 

Mouse Click 执行鼠标点击操作。

 

个人不建议使用这种定位,如果移动计算器窗口,那么上面按钮的坐标也会发生变化。导致定位不准确。获取定位坐标如下。

 

7.2.7 Process Close 关键字

按F5 查看 Process Close 关键字的说明,如下图:

 

Process Close 关键字用于关闭进程。

7.2.8 Win Get Client Size Height 和 Win Get Client Size Width 关键字

按F5 查看 Win Get Client Size Height 和 Win Get Client Size Height关键字的说明,如下图:

 

Win Get Client Size Height 关键字用于获取程序窗口的高度。

Win Get Client Size Width 关键字用于获取程序窗口的高度。

代码实现:

 

运行结果:

 

7.2.9 Win Get Title 和 Win Set Title 关键字

按F5 查看 Win Get Title关键字的说明,如下图:

 

Win Get Title 用于获取窗口标题。

按F5 查看 Win Set Title关键字的说明,如下图:

 

Win Set Title 用于设置窗口标题。

项目例子:Win Set Title 将“计算器”改为“计算机”;Win Get Title 获取当前“计算机”窗口的title,将通过log 打印出来

代码实现:

 

运行结果:

 

7.3  AutoItLibrary 库-帮助文档

在AutoItLibrary-1.1_x64 的安装包里的doc 目录下有一个AutoItLibrary.html 文件, 它包含了AutoItLibrary 提供的所有关键字。

 

这份文档只罗列了AutoItLibrary 库所关键字,但对于关键字的使用并没说明和例子。对此我们可以参考AutoIt 帮助文档。找到安装包...\AutoItLibrary-1.1_x64\3rdPartyTools\AutoIt\ 目录下的AutoItX.chm 文件。

例如,AutoItLibrary 库中提供了“Send”关键字,在AutoItX.chm 中就能打开send 方法的具体解释和例子。

 

除此之外,在安装包的...\AutoItLibrary-1.1_x64\tests_cn\还提供了关于计算器的项目。双击“RobotIDE.bat” 文件启动Robot Framework RIDE 打开项目。

 

7.4  AutoItLibrary 库在Web项目中的应用

7.4.1 实现Web文件上传

项目例子:教育局招生系统,沙井小学2的学校管理员导入学生信息。

Firefox浏览器下实现导入学生信息过程:

1.查看沙井小学2登录账号:286728,登录密码默认:123456

 

2.用沙井小学2学校管理员帐户登录系统

 

3.学生管理->导入学生信息

 

4. 选择导入的文件

 

导入的学生信息内容(导入2个学生信息)

 

导入文件存放在:D:\project\Educational\AutoItLibrary_project 下

 

Web实现附件上传的过程说明:

对于web 页面上打开的本地有Windows 上传窗口,Selenium 是无法进行识别和定位。

 

下面以操作“导入学生信息”弹出的窗口为例讲解AutoIt 实现上传过程。

1、首先打开AutoIt Windows Info 工具,鼠标点击Finder Tool,鼠标将变成一个小风扇形状的图标,按住鼠标左键拖动到需要识别的控件上。

 

 

 

 

如上面的两张图,通过AutoIt Windows Info 获得以下信息。

窗口的title 为“文件上传”,标题的Class 为“#32770”。

文件名输入框的class 为“Edit”,Instance 为“1” ,所以ClassnameNN 为“Edit1”。

打开按钮的class 为“Button”,Instance 为“1” ,所以ClassnameNN 为“Button1”。

 

2、根据AutoIt Windows Info 所识别到的控件信息打开SciTE Script Editor 编辑器,编写脚本。

脚本内容:

;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:\\project\\Educational\\AutoItLibrary_project\\学生信息.xls")

Sleep(2000)

; Click on the Open button

ControlClick("文件上传", "","Button1");

 

ControlFocus()方法用于识别Window 窗口。WinWait()设置10 秒钟用于等待窗口的显示,其用法与WebDriver 所提供的implicitly_wait()类似。ControlSetText()用于向“文件名”输入框内输入本地文件的路径。这里的Sleep()方法与Python 中time 模块提供的Sleep()方法用法一样,不过它是以毫秒为单位,Sleep(2000)表示固定休眠2000 毫秒。ControlClick()用于点击上传窗口中的“打开”按钮。

AutoIt 的脚本已经写好了,可以通过菜单栏“Tools”-->“Go” (或按键盘F5)来运行一个脚本吧!注意在运行时上传窗口当前处于打开状态。

 

3、脚本运行正常,将其保存为upfile.au3,这里保存的脚本可以通过Run Script 工具将其打开运行,但我们的目的是希望这个脚本被Python 程序调用,那么就需要将其生成exe 程序。打开Compile Script to.exe工具,将其生成为exe 可执行文件。

 

 

点击“Browse”选择upfile.au3 文件,点击“Convert”按钮将其生成为upfile.exe 程序。

 

4、通过Robot Framework 加Selenium2Library 库实现Web 上传:

1)在测试套件中导入Selenium2Library 库

 

2)测试用例中用到os.system ,所以需要在测试套件中导入os 库。

 

3)代码实现上传功能

 

4)运行结果

查看学校列表记录,新增了2条导入的数据。

 

7.4.2 实现Web文件下载

项目例子:教育局招生系统,沙井小学2的学校管理员导出学生信息导入模板。

实现过程:

1.查看沙井小学2登录账号:286728,登录密码默认:123456

 

2.用沙井小学2学校管理员帐户登录系统

 

3.学生管理->导出学生信息导入模板

 

实现的方法跟上传也是差不多。

posted @ 2016-09-04 12:49  听海8  阅读(2140)  评论(0编辑  收藏  举报