AutoIt自动化编程(3)【转】】的更多相关文章

五.自动化操作轻松入门系列5 控件操作 然而,在真正实现自动化时仅靠上面的技术往往难以达到预期目的.下面开始进入最为重要的控件操作. 1.设置文本 在安装软件的过程中用户往往需要提供一些必需信息,比如安装目录.很多用户并不喜欢把软件安装到默认的C盘而更愿意把它们安装到别的地方,那么脚本究竟提供了什么方法能让我们修改如下图所示的路径呢? 我们先用上文中提到的AutoIt3 Window Spy 或 AutoIt Window Info 来获得这个路径的编辑框的信息,假设这个窗口的标题为Setup…
模拟鼠标点击(按钮等)控件 既然是模拟用户操作,自然就包括了模拟鼠标点击在内. 适用命令/函数:Click/MouseClick/ControlClick 其中Click/MouseClick用来模拟用户的物理操作(点击),把鼠标点击事件发送到指定坐标位置(相对当前窗口或绝对位置)上,但这种方法并不能保证100%的准确性,屏幕分辨率.用户干扰和系统环境等都会影响到它们的执行结果,而ControlClick则直接把鼠标点击事件发送到目标窗口的目标控件上,因而更准确,一般我们不考虑使用坐标位置方式的…
注意:窗口标题和窗口文本参数总是对大小写敏感的. 1.等待窗口系列命令/函数 AHK和AU3都提供了用法类似的一组窗口等待命令/函数:WinWait/WinWaitActive/WinWaitClose. 它们分别用于等待窗口出现.等待窗口被激活.等待窗口被关闭.由于这些命令/函数的参数类似,现仅以WinWait为例说明. AHK: WinWait [, 窗口标题, 窗口文本, 超时时间, 排除标题, 排除文本] AU3: WinWait ( "窗口标题" [, "窗口文本&…
1.运行程序 Run 命令或者函数用来运行外部可执行文件 AU3:Run ( "文件名" [, "工作目录" [, 标志]] ) EXAMPLE: AU3:Run("Notepad.exe") 上面的示例中都没有给出程序“Notepad.exe”的路径,为什么仍能执行?这是因为它们都会自动在脚本所在目录下搜寻目标文件,如有则运行,否则就到系统文件夹(%PATH%)中搜寻.注意:A)某些程序必须给定“工作目录”才能成功运行!B)给出完整的文件路径有…
    本开源项目Ligg.WinOa是一个基于Ligg.EasyWinApp的Windows运维自动化应用.通过Ligg.EasyWinForm生成2个功能界面:管理员工具箱和用户工具箱:通过Ligg.WinConsole 分别生成 32位/64位的 UAC 提权的执行文件,实现对 Windows 各配置的更改: Ligg. EasyWinService用作运维自动化的主控台实现无人值守的.远程监控和运维:Ligg.EasyWinSignalR作为运维自动化的代理实现实时.远程监控和运维. 本…
情景: 在用selenium进行web页面自动化时,时不时会遇到上传附件的情况,常见的情况就是一个上传按钮,点击后弹出windows窗口,选择文件后上传,如下图1所示 图1 这种情况超出了selenium的能力范围,需要借助其他工具来实现,这里介绍AutoIt这个工具: 1.下载并安装 进入AutoIt官网,选择AutoIt -> Downloads,如图2: 图2 然后选择Full Installation版本,里面包含了所需的所有工具,如图3: 图3 下载后直接安装即可. 2.探测控件 (1…
自动化操作的稳定性,便利性虽然已经满足了要求,但是页面上呈现的按钮太多了,可以做的更加简单一些. 1. 简化页面的按钮,把5个按钮减少至3个,把Display HID按钮功能整合到create license里面:把保存图片按钮功能放到保存License操作中: 2. 优化输入框.由3个简化为2个,因为HID是固定的,不应该支持手动修改,而expired date默认为当前日期延后2个月,是支持修改的: 代码如下: #include <ScreenCapture.au3> #include &…
因为工作上的需要,某个信息系统不健全,因此仅仅需要一个一个的点击确认,客户端是网页版本的,抓包太复杂了,如何快速的能够自动化操作? 想到了之前学习python的时候,发现了一个基于java的图片编程软件,采用的是jpython脚本操作,截图就可以编程,非常适用于这种在图形界面上点击的操作,而不需要知道内部的细节,ID什么的. 软件的使用十分简单,控制函数是python的语法,函数就是直接给出的那种,比如 for i  in range(10): 函数体,易学易用,需要注意的是在截图的时候,需要调…
Raspberry Pi(中文名为“树莓派”,简写为RPi,(或者RasPi / RPI) [1]  是为学习计算机编程教育而设计),只有信用卡大小的微型电脑,其系统基于Linux.  随着Windows 10 IoT的发布,我们也将可以用上运行Windows的树莓派. 研发树莓派的目的是通过低价硬件及自由软件来推动学校的基础计算机学科教育.但很快树莓派就得到计算机和硬件爱好者的青睐,他们用它学习编程,并创造出各种各样新奇的.风靡一时的软硬件应用. [1] 目前树莓派最新版本是第三代B型和B+型…
树莓派我们编程一般都直接用高效的python,针对于GPIO编程,python也是有这一方面的库的,这里最有名也是最常用的就是RPI.GPIO了.这个库是专门为树莓派GPIO编程所设计的,利用它你可以愉快的像Arduino那样轻松控制GPIO管脚. 安装: sudo apt-get -y python-pip #安装pip sudo pip install rpi.gpio #安装RPI.GPIO 安装完成后在实际运用的时候,我们也会像arduino那样去设置输入输出,设置高低电平,获取针脚值等…
版本六中存在一个显著问题是: 当exe文件生存之后,运行的时候,通过consoleWrite函数打印出来的数据是无法展示出来的.这就存在一个问题:当运行失败的时候,我还是看不到任何log信息. 于是,我对程序再次进行了优化,代码如下: #include <ScreenCapture.au3> #include <GuiConstantsEx.au3> #include <date.au3> #include <GuiTab.au3> #include <…
前言: 随着CYQ.Data 开始回归免费使用之后,发现用户的情绪越来越激动,为了保持这持续的激动性,让我有了开源的念头. 同时,由于框架经过这5-6年来的不断演进,以前发的早期教程已经太落后了,包括使用方式,及相关介绍,都容易引人误解. 为此,我打算重新写个系列来介绍最新的版本,让大伙从传统的ORM编程过渡到自动化框架型思维编程(自已造的词). 于是:这个新系列的名称就叫:CYQ.Data 从入门到放弃ORM系列 什么是:CYQ.Data 1:它是一个ORM框架. 2:它是一个数据层组件. 3…
介绍 在这篇文章中,我们将介绍一下开源的Web-API自动化测试框架——Karate Karate是基于另一个BDD测试框架Cucumber来建立的,并且共用了一些相同的思想.其中之一就是使用Gherkin文件,该文件描述了被测试的功能 与Cucumber不同的是测试用例不需要用Java编写,并且被完整的描述在Gherkin文件中 通过Karate,您可以编写任何类型的Web服务端的测试脚本,并检查响应是否符合预期 Karate的验证引擎可以灵活的比较两个JSON或XML文件内容,不受空格和数据…
1 .什么是seleniumSelenium 是一个基于浏览器的自动化工具,它提供了一种跨平台.跨浏览器的端到端的web自动化解决方案.Selenium主要包括三部分:Selenium IDE.Selenium WebDriver 和Selenium Grid: Selenium IDE:Firefox的一个扩展,它可以进行录制回放,并可以把录制的操作以多种语言(例如java,python等)的形式导出成测试用例. Selenium WebDriver:提供Web自动化所需的API,主要用作浏览…
1-1 Python运维-课程简介及基础 1-2 Python运维-自动化运维脚本编写 2-1 Python自动化运维-Ansible教程-Ansible介绍 2-2 Python自动化运维-Ansible教程-Ansible配置运行1 2-3 Python自动化运维-Ansible教程-Ansible配置运行2 2-4 Python自动化运维-Ansible使用教程1 2-5 Python自动化运维-Ansible使用教程2 2-6 Python自动化运维-Ansible使用教程3 2-7 A…
2008年的时候第一次接触AutoIt,当时觉得局限性太多了,就不想学,觉得把Watir,Ruby搞好就行了. 最近一段时间比较闲,发现自己对GUI的自动化操完全是短板,就把AutoIt重新拾起来了.不再考虑什么局限性了,想着,反正现在,GUI自动化操作我啥也不会,学习了解一下总是好的. 也许是先入为主的想法太严重了,我对Send,controlSend命令是有偏见的,觉得定位能力差,一旦一个界面不是在前端就定位不了.习惯性的使用controlClick, ControlCommand, Con…
    本框架(解决方案)是一个Windows应用编程框架和UI库,通过该框架,不需任何代码,通过XML配置文件,搭建任意复杂的Windows应用界面,以类似Execel公式的方式实现基本的过程控制(赋值.条件判断.循环.跳转)和功能(字符/文件处理.Windows脚本执行.逻辑运算.数学运算.数据输入输出及输入验证.数据格式转换.加密解密.表单字段验证等):动态加载“即插即用“的.Net组件或COM组件实现特定的业务处理功能:支持多线程.多语言. Ligg.EasyWinForm是一个Winf…
准备工作# 在开始自己项目的自动化测试之前,我们最好已经完成了下面的准备工作: 1.熟悉待测系统 对项目的待测系统整体功能和业务逻辑有比较清晰的认识. 2.编写系统的自动化测试用例大纲和自动化测试用例 这一步主要是让我们在编码前,按优先级将系统可实施自动化测试的部分划分出来. 3.选择合适IDE(集成开发环境) Python IDLE:如果读者初学Python,并且不精通其他编程语言及IDE,则建议从这个IDE入手,它自带的Shell模式可以帮助我们快速练习Python语法. UliPad:轻量…
前言 任何一门工具,当你使用它到极致的时候,往往都朝着这样子的两个方向发展 1. 具有鼠标操作功能的软件,他的使用的极致就是脱离鼠标,迈向键盘 2. 主要是键盘操作的,他的极致就是脚本自动化,或者说一键生成 不信?可以打开Word,Excel ,Photoshop等软件,体会一下专业软件在快捷键和脚本方面的强大功能吧. 正如许多软件一样,LabVIEW也有丰富的快捷键,用过LabVIEW的你是否真正了解过他们呢? 本节小编将扒一扒那些让你相见恨晚的LabVIEW快捷键,扒一扒你不曾了解的LabV…
Delphi Excel 操作大全 (一) 使用动态创建的方法首先创建 Excel 对象,使用ComObj:var ExcelApp: Variant;ExcelApp := CreateOleObject( 'Excel.Application' );1) 显示当前窗口:ExcelApp.Visible := True;2) 更改 Excel 标题栏:ExcelApp.Caption := '应用程序调用 Microsoft Excel';3) 添加新工作簿:ExcelApp.WorkBook…
还是James大叔的文章:http://www.satisfice.com/blog/archives/856 本文提出了Testing和checking的定义和他们之间的区别. ============以下是译文=========== 测试和使用工具在被人类认识的一开始就是两件事(不仅是两件事,而且是两件具有很多不同特征的事情). 测试是脑力劳动并且是无形的,而工具的使用是公开的(可见的和有形的).工具已经侵入到每个流程并且改变了那些流程. 因此,至少成百上千年我们都在思考:是我做的还是工具在…
原文:VSTO之旅系列(五):创建Outlook解决方案 本专题概要 引言 Outlook对象模型 自定义Outlook窗体 小结 一.引言 在上一个专题中,为大家简单介绍了下如何创建Word解决方案的,所以本专题中将为大家介绍下Outlook相关的内容.我们从Visual Studio 2010 中Office节点下的模板中我们可以看到,Outlook只有外接程序的模板,并没有提供像Word或Excel这样的文档级的模板,所以VSTO没有为Outlook解决方案创建宿主项和宿主控件(Excel…
概述 程序集的反射以及动态的创建类对象,是自动化编程常用的到知识原理,比如插件编程.模板设计模式,都可以采用发射机制动态的去创建实例化对象,实现类的动态加载.这里简单总结下,常用到的Framework反射知识点(泛型和非泛型):.NET框架的三个内置类来使用反射:System.Reflection.Assembly.System.Type和System.Activator: System.Reflection.Assembly类描述了.NET的程序集.在.NET中,程序集是配置单元.对于一个典型…
摘自:http://wenjieshiyu.blog.163.com/blog/static/10739413201072033115869/ 个人收藏:Delphi  控制Excel(一) 使用动态创建的方法首先创建 Excel 对象,使用ComObj:var ExcelApp: Variant;ExcelApp := CreateOleObject( 'Excel.Application' );1) 显示当前窗口:ExcelApp.Visible := True;2) 更改 Excel 标题…
前言 入软件测试行至今已经8年多,承领导们的信任与重用,同事的支持与信任,我的职业发展算是相对较好,从入行到各类测试技术岗位,再到测试总监,每一步都刚刚好.最近在自身职业发展瓶颈,人生十字路口,静坐反思,重新审视个人规划与测试人员发展的这个问题,问回自己:你为什么做软件测试工程师?胡思乱想之下有了此文. 一.软件测试起源 网上有一些经典的软件事故,大家感兴趣可以自己搜索一下,我搜了几个列举如下: 简单总结:软件出现缺陷(BUG)导致经济或其他损失,因此有了软件测试. 由此可知软件测试目的:发现缺…
Object Passal的程序结构很特殊,与其它语言如C++,Object Windows等结构都不同.一个Delphi程序由多个称为单元的源代码模块组成.使用单元可以把一个大型程序分成多个逻辑相关的模块,并用来创建在不同程序中使用的程序库. 8.1 Program单元 Program单元就是Delphi中的项目文件. Program单元是一个特殊的单元,类似于C语言中的Main程序,即为应用程序的主程序.一个程序可以有多个单元组成,也可以只有一个Program单元组成,例如前面我们介绍过的D…
2017-2018-1 20155313 <信息安全系统设计基础> Myod Myod要求 1.复习c文件处理内容 2.编写myod.c 用myod XXX实现Linux下od -tx -tc XXX的功能 3.main与其他分开,制作静态库和动态库 4.编写Makefile 5.提交测试代码和运行结果截图, 提交调试过程截图,要全屏,包含自己的学号信息 6.在博客园发表一篇博客,重点写遇到的问题和解决过程 解决过程 1.Linux环境下c语言的处理我们目前使用的是vim编辑器,vim编辑器的…
1. 用于语句覆盖的基路径法 基路径法保证设计出的测试用例,使程序的每一个可执行语句至少执行一次,即实现语句覆盖.基路径法是理论与应用脱节的典型,基本上没有应用价值,读者稍作了解即可,不必理解和掌握. 基路径法步骤如下: 1)画出程序的控制流图 控制流图是描述程序控制流的一种图示方法,主要由结点和边构成,边代表控制流的方向,节点代表控制流的汇聚处,边和结点圈定的空间叫做区域,下面是控制流图的基本元素: 以下代码: void Sort(int iRecordNum, int iType) { ;…
个人分类: 软件测试 编辑 在这个互联网技术快速迭代的时代,每个测试员都知道技术对于职业发展的重要性,那些技术好的测试员不仅薪资高,而且大多数集中在一线互联网企业工作,让人感觉非常高大上的同时,也想去大厂做测试员.然而很多人没有入职大厂并不是自己没有技术,而是自己没有在大厂任职过的经验,对于大厂的面试心里没有底. 最近我就有一个哥们,经过一系列艰辛面试,终于被美团录取,以下是他在面试前的面试准备以及他面试的一些题目,希望对在家有帮助! 自动化测试用例从哪里来? 你觉得自动化测试最大的缺陷是什么?…
gulp例子:https://github.com/Aquarius1993/gulpDemo 淘宝镜像:$ npm install -g cnpm --registry=https://registry.npm.taobao.org   一 入门:          npm: node package manager(前提是安装了node)           1.1 全局安装   npm install --global gulp           1.2 作为项目依赖安装  npm in…