AutoIT最初是为了帮助IT管理和维护而开发的工具,能自动完成软件的安装。由于自动化安装和自动化测试在功能需求上有许多相似之处,都要模拟用户对软件进行操作,并验证执行的结果,所以,AutoIT逐渐成为一款具有BASIC语言风格的自动化测试工具,它可以识别各种Windows控件并进行操作和验证,从而帮助我们实现Windows客户端软件的自动化测试任务。

AutoIT的主要特征有:

  • 模拟击键动作(支持大多数的键盘布局);
  • 模拟鼠标移动和点击动作,包括单击、双击和拖拽动作;
  • 对窗口进行移动、调整大小和其他操作;
  • 直接与窗口的“控件”交互(设置/获取控件的相关属性);
  • 配合剪贴板进行剪切、粘贴文件操作;
  • 对注册表进行修改;
  • 执行Windows及DOS下的可执行文件;
  • 将脚本直接转换成独立的exe可执行文件。

安装

从官方网站(www.autoitscript.com)下载安装包(如autoit-v3-setup.exe),启动它,就开始安装,并根据提示进行操作。在安装中,要选择脚本操作的模式,如下图所示,有两种模式,一般选“Edit the script”。

  • Run the script,则双击au3脚本时会直接运行脚本。
  • Edit the script,则双击au3脚本时会打开脚本编辑器。

然后再选择安装路径(Destination Folder),可以使用默认路径或指定任意路径,点击“Install (安装)”,系统开始拷贝文件……,完成安装。

AutoIT使用类似于VBScript和BASIC的脚本语言,同时支持更加复杂的表达式、用户函数、循环以及其他功能。AutoIT被设计尽可能小。使用其中的工具――Aut2Exe,可以把脚本文件编译为可独立运行的EXE文件,而使用AutoItX可以将它作为内核嵌入其他工具中使用。AutoIT安装后,安装目录下的主要模块及其功能说明请参考下表。

文件与目录

详细信息

AutoIt3.exe

AutoIt的主程序,脚本文件仅需它即可以解释运行(UNICODE版本)

AutoIt3A.exe

AutoIt的主程序,脚本文件仅需它即可以解释运行(ANSI版本)

AU3Info.exe

AutoIt窗口信息工具(AutoIt Window Info Tool)

Aut2Exe.exe

脚本编辑器(Unicode码),用于将au3脚本编译成exe可执行文件

Aut2ExeA.exe

脚本编辑器(ANSI码),用于将au3脚本编译成exe可执行文件

AutoITSC.bin

编译脚本所需的可执行体(stub,根)

Include目录

官方提供的库文件,这里面有大量丰富的库函数方便我们写脚本时使用

AutoItX3目录

包含可以被嵌入到其他工具和语言中去的DLL版本的AutoIt v3

SciTE目录

包含AutoIT的脚本编译器

为何选用AutoIT

一般来说,一套完整的自动化测试工具主要由以下几个部分组成:

  1. 测试脚本开发环境(IDE),用于编写和调试测试脚本;
  2. 测试脚本执行引擎;
  3. 测试脚本的自动分发和数据同步;
  4. 测试脚本的组织和管理系统;
  5. 测试报告系统。

但具备上述功能模块的商业测试软件,其价格不莫,许多中小型软件公司难以承受。同时,每个公司对于脚本的组织管理和测试报告的要求也不完全一致,商业测试工具又很难完全满足每个公司的特定需求,这样,很多公司即使购买了商业工具,也主要使用上述前3个功能,而后两个功能不能很好使用,一般还要进行二次开发,才能满足自己公司的需要。另外,商业工具为了尽可能地占有市场,往往提供许多额外而复杂的功能,而这些功能对于大多数用户来说平时很少用,却大大加重了工具的学习难度和公司的投入成本。

而AutoIT是一款简单而优秀的免费软件,一方面我们不用担心费用问题;另一方面在功能上,AutoIT已经提供了自动化测试工具最核心的功能;编写、调试和执行脚本的功能。而脚本的组织管理和测试报告部分,则可以根据每个公司的特点来自行开发或选用第三方的管理工具,如可以选用开源配置管理工具CVS、Subversion等来管理脚本。对于测试报告,您可以自己编写一个程序来读入AutoIT的测试执行日志,生成结果报表。

同时,AutoIT学习起来非常简单,根据我们的使用经验,一般测试人员只需很短的时间(1周时间)就可以迅速掌握它,而一般大型商业工具都须要花费测试人员一、二个月或更长的时间来学习掌握。

AutoIT是一款完全免费、开放的工具,小巧灵活,扩展性好,易于被定制,功能强大而又使用简单,同时有着广大的用户群体和官方不断的技术支持和功能升级,因此,越来越多的公司使用AutoIT来实现客户端软件的自动化测试。

AutoIT简介的更多相关文章

  1. UI自动化测试(四)AutoIT工具使用和robot对象模拟键盘按键操作

    AutoIT简介 AutoIt 目前最新是v3版本,这是一个使用类似BASIC脚本语言的免费软件,它设计用于Windows GUI(图形用户界面)中进行自动化操作.它利用模拟键盘按键,鼠标移动和窗口/ ...

  2. C/S架构自动化测试入门

    所谓C/S架构即Client/Server(客户端/服务器架构).虽然近年来C/S架构产品越来越少,大有被B/S(Browser/Server 浏览器/服务器)架构超越的趋势,但C/S还是有B/S不可 ...

  3. C/S架构系统自动化测试入门

    所谓C/S架构即Client/Server(客户端/服务器架构).虽然近年来C/S架构产品越来越少,大有被B/S(Browser/Server 浏览器/服务器)架构超越的趋势,但C/S还是有B/S不可 ...

  4. windows gui测试工具:AutoIt

    windows gui测试工具:AutoIt 2017-01-09 目录 1 简介2 示例1 记事本自动化操作3 示例2 上传文件 1 简介 返回 AutoIt v3 是用以编写并生成具有 BASIC ...

  5. autoit 简单使用-- 操作windows窗口

    autoit 简单使用 autoit中文交流论坛: http://www.autoitx.com/index.php 1 下载 autoit 中文安装包 : https://yunpan.cn/OcP ...

  6. RobotFramework_1.简介和安装

    RobotFramework_1.简介与安装 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bot ...

  7. ASP.NET Core 1.1 简介

    ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...

  8. MVVM模式和在WPF中的实现(一)MVVM模式简介

    MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...

  9. Cassandra简介

    在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...

随机推荐

  1. RadioButton 自定义控件

    在res/drawable新建radiobutton.xml(本案例为video——evaluate.xml)如下 <?xml version="1.0" encoding= ...

  2. Play Framework框架 JPA惯用注解

    Play Framework框架 JPA常用注解 1.@Entity(name=”EntityName”) 必须 ,name 为可选 , 对应数据库中一的个表 2.@Table(name=”" ...

  3. Echarts图表控件使用总结2(Line,Bar)—问题篇

    Echarts图表控件使用总结1(Line,Bar):http://www.cnblogs.com/hanyinglong/p/Echarts.html 1.前言 a.前两天简单写了一篇在MVC中如何 ...

  4. JQuery EasyUI Tree

    Tree 数据转换 所有节点都包含以下属性: id:节点id,这个很重要到加载远程服务器数据 which is important to load remote data text: 显示的节点文本 ...

  5. JSP Model模式

    用JSP开发的Web应用模型可以分为Model1和Model2 对于小型的Web应用,通常可以使用模型1来完成. 模型1可以分为两种方式: 一种是完全使用JSP页面来开发Web应用: 另一种是使用JS ...

  6. 网络开始---多线程---NSThread-01-基本使用(了解)(二)

    #import "HMViewController.h" @interface HMViewController () @end @implementation HMViewCon ...

  7. [转]android访问网络:java.net.ConnectException: localhost/127.0.0.1:8888 - Connection refused

    这对刚学会向tomcat模拟的本地服务器发送请求的同学非常重要! 转自:http://wing123.iteye.com/blog/1873763 描述:在做注册功能的时候,向本地服务器:127.0. ...

  8. Linux套接字编程

    网络中的进程是如何通信的? 在网络中进程之间进行通信的时候,那么每个通信的进程必须知道它要和哪个计算机上的哪个进程通信.否则通信无从谈起!在本地可以通过进程PID来唯一标识一个进程,但是在网络中这是行 ...

  9. Effective Java 51 Beware the performance of string concatenation

    Using the string concatenation operator repeatedly to concatenate n strings requires time quadratic ...

  10. java web中日期Date类型在页面中格式化显示的三种方式

    一般我们经常需要在将服务器端的Date类型,传到页面进行显示,这就涉及到一个如何格式化显示Date类型的问题,一般我们有三种方式进行: 1)在服务端使用SimpleDateFormat等类格式化成字符 ...