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. 通过NameValuePairsValueProvider对象来获取指定前缀的Key

    using System; using System.Collections.Generic; using System.Linq; using System.Web.Http.ValueProvid ...

  2. Android详细的对话框AlertDialog.Builder使用方法

      我们在平时做开发的时候,免不了会用到各种各样的对话框,相信有过其他平台开发经验的朋友都会知道,大部分的平台都只提供了几个最简单的实现,如果我们想实现自己特定需求的对话框,大家可能首先会想到,通过继 ...

  3. SQL数据库基础(三)

    认识数据库备份和事务日志备份 数据库备份与日志备份是数据库维护的日常工作,备份的目的是在于当数据库出现故障或者遭到破坏时可以根据备份的数据库及事务日志文件还原到最近的时间点将损失降到最低点. 数据库备 ...

  4. javascript函数中的三个技巧【二】

    技巧二: [惰性载入函数] 因为浏览器之间的行为的差异,我们经常会在函数中包含了大量的if语句,以检查浏览器特性,解决不同浏览器的兼容问题,比如,我们最常见的为dom节点添加时间的函数 functio ...

  5. js 数组常用方法

    var arr =[0,1,2,3,4,5,6,7,8,9]; 1,shift() 删除数组的第一个元素,返回删除的值  //这里返回0 2,unshift(1,2)  把参数添加到数组的前面,返回值 ...

  6. vIDC v2.0 强大的端口转发神器使用总结-开放内网tfs代码服务

    vIDC2.0 端口映射工具,最近在公司闲来无事,想自己整个tfs来管理自己的研究代码. 本来是想用微软Visual Studio提供的免费tfs,但是无奈速度太慢.他们的服务器在美国,中国也没有代理 ...

  7. 第一节 SOA的基本概念和设计思想

    WCF一直很火,一直也没有时间来静下心来学习新的技术.不知不觉已经做程序八年了,其中的时间基本都费了,刚入门时很火热,后来慢慢热情被琐事取代.现在开始学习JAVA和WCF,学JAVA的原因就是想做手机 ...

  8. Android Service使用拾遗[阿里工程师分享]

    Service作为android的四大组件之一常用来帮助我们完成一些需要放在后台处理的任务,通过startService和bindService两种方式被调用.因为Service也是在主线程中运行的, ...

  9. 27个提升效率的iOS开源库推荐

    DZNEmptyDataSet(UI,空表格视图解算器) PDTSimpleCalendar(UI,drop-in日历组件) MagicalRecord(实施活跃记录模式的Core Data助手) C ...

  10. Android 之 json数据的解析(jsonReader)

    json数据的解析相对而言,还是比较容易的,实现的代码也十分简单.这里用的是jsonReade方法来进行json数据解析. 1.在解析之前,大家需要知道什么是json数据. json数据存储的对象是无 ...