1.定义

AutoIt 目前最新是v3版本,这是一个使用类似BASIC脚本语言免费软件,它设计用于Windows GUI(图形用户界面)中进行自动化操作。它利用模拟键盘按键,鼠标移动和窗口/控件的组合来实现自动化任务。而这是其它语言不可能做到或无可靠方法实现的(例如VBScriptSendKeys).

2.功能

(1)运行 Windows 及 DOS 下的可执行文件

(2)模拟键击动作(支持大多数的键盘布局)

(3)模拟鼠标移动和点击动作。

(4)对窗口进行移动、调整大小和其它操作。

(5)直接与窗口的“控件“交互(设置/获取 文字、移动、关闭,等等)

(6)配合剪贴板进行剪切/粘贴文本操作

(7)对注册表进行操作

3.使用AutoIt

可查询帮助文档

 4.初识AutoIt

本人,测试小白,工作有一部分需要点点点,每天重复进多个远程桌面并开登录报盘程序做清库操作,这种重复性工作实属乏味,在网上搜关于自动化脚本出来的大部分是Python、Selenium,而我们的程序是基于C/S架构可能不太适用,正当我发愁时,领导亲切的问候让我第一次了解到AutoIt,下面就简单介绍下如何利用万能小工具AutoIt实现自动登录模拟鼠标点击菜单

5.打个招呼

学习一门新的编程语言写的第一个程序必然是"Hello,World!",首先新建一个脚本文件(右键-新建-AutoIt v3 Script),

选中新建的脚本再点击右键选中Edit Script

打开后可以看到如下图(;表示注释)

现在我们就可以编写第一个脚本了,可以用MsgBox函数实现,MsgBox(0, "指南", "Hello World!") 

6.登录

用到的函数有:Run、Sleep、ControlSend、ControlSetText、ControlClick,Run后面跟的路径是所需登录的客户端位置,参考网上说只输入目标不一定能启动,逗号前是目标逗号后是起始位置(选中所需登录客户端右键-属性-快捷方式就可以看到),Sleep ( 延迟 )表示使脚本暂停指定时间段以毫秒为单位,ControlSend ( "窗口标题", "窗口文本", 控件ID, "字符串" [, 标志] )ControlSetText ( "窗口标题", "窗口文本", 控件ID, "新文本" )ControlClick ( "窗口标题", "窗口文本", 控件ID [, 按钮] [, 点击次数]] )表示窗口操作控件,后面的参数可以用AutoIt Window Info来看(开始菜单-所有程序- AutoIt v3-AutoIt Window Info.),拖动Finder Tool即可看到窗口标题、窗口文本、控件ID

7.模拟鼠标点击菜单

AutoIt本身有调用窗口中的某个菜单项目的函数WinMenuSelectItem,但不幸的是只能对标准菜单有效,果断选择MouseClick ( "按钮" [, x, y [, 点击次数 [, 速度 ]]] ),执行鼠标点击操作,具体参数帮助文档中描述的很清晰

 8.总结

在学习和使用AutoIt过程中,熟悉了AutoIt这个万能小语言,简化了我在日常工作中繁琐重复的操作,第一次写博客可能有许多不足的地方,如有讲解不清楚的部分望海涵,谢谢。

 

初识AutoIt的更多相关文章

  1. AutoIt实现Webdriver自动化测试文件上传

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

  2. Android动画效果之初识Property Animation(属性动画)

    前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...

  3. 初识Hadoop

    第一部分:              初识Hadoop 一.             谁说大象不能跳舞 业务数据越来越多,用关系型数据库来存储和处理数据越来越感觉吃力,一个查询或者一个导出,要执行很长 ...

  4. python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)

    一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...

  5. 初识IOS,Label控件的应用。

    初识IOS,Label控件的应用. // // ViewController.m // Gua.test // // Created by 郭美男 on 16/5/31. // Copyright © ...

  6. UI篇(初识君面)

    我们的APP要想吸引用户,就要把UI(脸蛋)搞漂亮一点.毕竟好的外貌是增进人际关系的第一步,我们程序员看到一个APP时,第一眼就是看这个软件的功能,不去关心界面是否漂亮,看到好的程序会说"我 ...

  7. Python导出Excel为Lua/Json/Xml实例教程(一):初识Python

    Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...

  8. 初识SpringMvc

    初识SpringMvc springMvc简介:SpringMVC也叫Spring Web mvc,属于表现层的框架.Spring MVC是Spring框架的一部分,是在Spring3.0后发布的 s ...

  9. 初识redis数据类型

    初识redis数据类型 1.String(字符串) string是redis最基本的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据 ...

随机推荐

  1. rocketmq学习(一) rocketmq介绍与安装

    1.消息队列介绍 消息队列本质上来说是一个符合先进先出原则的单向队列:一方发送消息并存入消息队列尾部(生产者投递消息),一方从消息队列的头部取出消息(消费者消费消息).但对于一个成熟可靠的消息队列来说 ...

  2. Metasploit工具----辅助模块

    Metasploit框架(Metasploit Framework,MSF)是一个开源工具,旨在方便渗透测试,他是有Ruby程序语言编写的模板化框架,具有很好的扩展性,便于渗透测试人员开发.使用定制的 ...

  3. 查看 Linux 系统版本信息

    博客地址:http://www.moonxy.com 一.前言 Linux 下如何查看内核信息.发行版信息,系统位数.CPU 信息等等,Windows 下我们可以通过各种图形化软件来查看,但是对于 L ...

  4. CTC安装错误之:binding.cpp:6:29: fatal error: torch/extension.h: No such file or directory

    错误原因:该问题主要由于CTC的版本导致. 解决方法: 在终端打开warp-ctc文件夹: cd warp-ctc 然后:git checkout ac045b6072b9bc3454fb9f9f17 ...

  5. Android的有序广播和无序广播(解决安卓8.0版本之后有序广播的接收问题)

    前言 Google从Android8.0版本开始,对在清单文件中静态注册广播做了限制. *** 特殊广播(动态注册广播接收者) 说:有序广播和无序广播之前,咱们先来说下Android中一些特殊的广播如 ...

  6. 豆瓣电影TOP250和书籍TOP250爬虫

    豆瓣电影 TOP250 和书籍 TOP250 爬虫 最近开始玩 Python , 学习爬虫相关知识的时候,心血来潮,爬取了豆瓣电影TOP250 和书籍TOP250, 这里记录一下自己玩的过程. 电影 ...

  7. TCP/IP 物理层卷一 -- 基本概念

    一.基本概念: 物理层:TCP/IP 协议簇的最底层,物理层所需要考虑的是如何在连接计算机的传输媒体上传输数据的比特流,而不是连接计算机的具体物理设备. 信号:数据的电气或电磁表现,是数据在传输媒体上 ...

  8. 手把手教你Pytest+Allure2.X定制报告详细教程,给自己的项目量身打造一套测试报告-02(非常详细,非常实用)

    简介 前边一篇文章是分享如何搭建pytest+Allure的环境,从而生成一份精美的.让人耳目一新的测试报告,但是有的小伙伴或者童鞋们可能会问,我能不能按照自己的想法为我的项目测试结果量身打造一份属于 ...

  9. wordpress访问速度慢

    可能是google字体的原因 1.找到wordpress目录下wp-includes/script-loader.php这个文件 2.查找open_sans_font_url这个字段,把后面的font ...

  10. 【Git初探】Git中fatal: Not a git repository (or any of the parent directories): .git错误的解决办法

    今天用git bash更新项目时遇到了无论使用什么命令都会报fatal: Not a git repository (or any of the parent directories): .git的情 ...