界面自动化测试工具-Ksend

Ksend介绍

概述

Ksend是一个自动化工具,可以应用于自动化测试、设备维护等领域,它可以模拟后台文本消息的发送、模拟键盘和鼠标动作、并能进行简单的windows界面、IE页面的分析和控制等。
Ksend的主要功能:
 文本发送功能:将文本分行发送至指定的一个或多个文本窗口,可以控制发送的延时;
 支持键盘、鼠标的录制和重放;
 支持TCL语言控制,可以利用TCL语言控制键盘、鼠标、界面及文本的发送;
 可以利用TCL语言分析、捕获和控制窗口;
 支持IE页面的分析和控制;
应用场景:
命令行维护、测试:可以通过TCL语言或批语句将维护或测试命令发送到telnet终端、DOS窗口、串口终端等窗口,实现自动化的配置和维护。比如添加10000条路由、10000条ACL等参数遍历的维护和测试;可以进行局域网地址的连通性遍历测试;可以用于设备的批量升级维护等等。
界面维护、测试:可以利用程序中扩展的TCL语句对界面进行控制,比如在WEB界面添加1000个用户、自动发送Notes邮件等等。

Ksend新增特性

窗口信息功能增强

增加对combox、listbox、listview、treeview窗口的内容捕获功能,在“窗口信息”页面,如果捕获的类型是上述的页面,则可以显示页面的内容:
在这里插入图片描述
上图显示的是浏览器中捕获的信息,窗口类型为listview,行数为8行,列数为4列,各列之间以TAB键隔开。

IE页面分析功能

增加对IE页面的分析功能,由于IE页面与普通的windows界面存在着很大的差别,需要特别处理:
在这里插入图片描述
1)TCL扩展命令
增加如下TCL扩展命令:
2)Window界面控制
tcombo:Combox控件(下拉框)中的条目选择
tlistbox:ListBox控件(列表框)中的条目选择
tlistview:ListView控件(报表框)中的条目选择
wclose:关闭相应句柄的窗口
tbmp:桌面截图,保存为文件
3)IE界面控制
iopen:打开指定的网址
iset:设置页面元素中的信息
iclick:链接、按钮点击
iget:获取页面元素中的信息
iselect:选中/去选单选框、复选框
4)其他
增强krec、trec、krecf、trecf命令,使其能够获取combox、listbox、listview、treeview窗口控件的内容。

实现机制

Ksend的一个重要功能是向各windows窗口发送文本字符,实现这个功能有两种方式,一种是windows的消息传递,另一种是键盘模拟。
消息传递是通过PostMessage函数在Ksend程序和目标窗口程序之间进行文本消息的传递,这种方式不会占用键盘事件,因此在这种方式下,用户可以在发送文本的同时进行其他鼠标和键盘操作,比如在Ksend发送时可以正常的写Word文件,收发Notes邮件等,对用户没有影响。
键盘模拟方式是模拟用户的键盘输入,使用这种方式的原因是因为有些界面、控件(如WEB中的输入框)无法用Ksend进行捕获,无法进行消息传递,只能使用键盘进行模拟输入,此种方式会占用键盘事件,在文本模拟输入过程中,如果用户进行界面、键盘、鼠标操作,将会影响输入的内容。
Ksend中同时存在上述两种实现方式,其中采用消息传递方式的有:
 批语句发送功能;
 TCL扩展语句中的大多数语句:tsend、tput、tout、ksend、ksendkey、krec、trec、trecf、krecf、crecf、win、gettop、findw、findcw、getmtext、getmhwnd、getmhwndxy、getmtextxy、tsendkey、buttondown、winclose、winwaitopen、winwaitclose。
非消息传递方式或会影响用户当前操作的语句有:
键盘、鼠标模拟语句和一些扩展的TCL语句。
扩展TCL语句:
 settop:将某个窗口置顶
 msgbox:显示对话框
鼠标模拟语句:
 mouse_ld:鼠标左键按下
 mouse_lu:鼠标左键松开
 mouse_rd:鼠标右键按下
 mouse_ru:鼠标右键松开
 mouse_md:鼠标中键按下
 mouse_mu:鼠标中键松开
 mouse_lclick:鼠标左键单击
 mouse_rclick:鼠标右键单击
 mouse_mclick:鼠标中键单击
 mouse_dbclick:鼠标左键双击
 mouse_move x y:鼠标移动至屏幕坐标x,y处
 mc_move 窗口句柄 x y:鼠标移动至窗口内坐标x,y处
键盘模拟语句:
 key_press keycode:键盘按键一次,keycode为键盘码(1~254)
 key_down keycode:键盘按下,不松开
 key_up keycode:键盘松开
 key_send 字符串:向当前窗口输出字符串

Ksend使用介绍

批语句发送功能

在这里插入图片描述
程序打开的界面如上,分为三栏:配置、批语句、发送。
配置栏用于批量语句的自动生成,比如要向DOS窗口发送“ping 192.0.0.1”~ “ping 192.0.0.254”等254条语句,如果一个一个输入的话效率很低,此时可以用配置功能生成,在“初始语句”栏输入“ping 192.0.0.(*)”,在“处理”一栏选第2个选项,替换符从1到254,然后点批语句栏中的“语句生成”按钮,就会在批语句文本框中生成所需要的字符串。

在这里插入图片描述
在初始语句中可以输入多行,比如需要在ping语句后执行tracert命令,则在初始语句中输入“ping 192.0.0.()”和“tracert 192.0.0.()”两条语句,通过上下键盘可以切换语句,然后点语句生成,结果如下图所示:
在这里插入图片描述
如果不需要语句生成功能,可以直接在批语句的文本栏输入要发送的语句,或者可以从文件中读取,也可以将批语句文本栏的文本存盘。
批语句输入后,需要将语句发送到相关的窗口,这时需要对目标窗口进行手工捕获,捕获的操作方式为拖动下图中的放大镜图标到相应的窗口即可:

在这里插入图片描述
具体操作:在放大镜图标上按住鼠标左键,鼠标图标会变为放大镜图标,此时不要松开鼠标,移动鼠标到目标窗口上(比如DOS窗口),然后放开鼠标,就会将此时鼠标下方的窗口捕获。在鼠标移动的过程中,鼠标下方的窗口边框会高亮显示,并且可以看到程序标题栏也会发生变化,它指示的是当前鼠标下的窗口句柄:
在这里插入图片描述
另外鼠标移动过程中还有一个变化的地方是“窗口捕获”栏的颜色和“开始发送”按钮下的文本,它指示的是当前鼠标位置的颜色和具体的十六进制数值,利用此功能可以获取屏幕上的颜色值:
在这里插入图片描述
如上图表示当前鼠标指向的颜色为深蓝色,蓝色分量数值是0xA5,绿色分量数值是0x49,红色分量数值是0x42。
窗口捕获后,会将捕获的窗口显示在“发送窗口列表”当中:
在这里插入图片描述
如果想将文本同时发往多个窗口,需要选择“多窗口发送”选项,再按上面的方法进行多个窗口的捕获。
在这里插入图片描述
所有窗口捕获后,可以设置每行的发送间隔时间和每个字符间的间隔时间(有些窗口如超级终端反应较慢,字符发送太快会出现丢字符的现象,因此需要设置字符间的间隔时间),然后点“开始发送”按钮进行文本的发送。
在发送过程中可以点“停止”按钮停止发送,停止按钮和开始发送按钮为同一个按钮。
如果要去除已捕获的窗口,只需在发送窗口列表中点右键,就会有相应的菜单处理:
在这里插入图片描述
其他选项:
自动回车/换行:在发送一行后是否自动发送回车/换行符
总在最顶层:保持ksend在windows的最上层,不被其他窗口覆盖,此选项对所有的页面(TCL页面、键盘鼠标页面等)都有效,在某些情况下,需要去除此选项。
循环:对生成或读取的语句进行循环发送
使用说明:批语句发送功能的帮助按钮

*如果用户想对延时时间进行单独的控制,可以使用delay语句:
可以通过在批语句中添加#delay命令人工增加延时,#delay语法:
#delay 延时的毫秒数
毫秒数的有效范围为1~60000,即最多可延时一份钟。
例如延时1秒钟的语句为:#delay 1000

TCL语言发送功能

使用批语句进行文本的发送有很多不灵活的地方,比如要发送从1~10000的数字,就必须先构造出相应的文本;一些非文本的控制符(如F1、CTRL、ALT等)也无法发送;还有就是发送前必须捕获相应的窗口等等,而使用TCL语言控制就可以解决上述的问题。
TCL语言发送界面如下:
在这里插入图片描述
TCL语言发送界面也分为三栏:TCL语言窗口、执行窗口、发送窗口。
TCL语言窗口用于编辑TCL脚本,TCL语言的关键字和扩展命令的关键字在窗口中会以红体字显示,注释语句以‘#’字符开头,显示为蓝体字,扩展TCL命令的帮助在“语法说明”按钮页面中列出。用户可以对编辑的TCL语言文件存盘,也可以读入原来存盘的TCL文件。“使用举例”按钮页面中有一些常用脚本的例子,对于不太熟悉TCL语法的用户可以进行参考,快速入门,其实语法还是比较简单的。
TCL语言是一种脚本描述语言,在TCL语言执行前不会对TCL语句进行编译,因此如果有几条TCL语句,其中有一条存在错误,那么在此条错误语句之前的TCL语句会被执行,在错误语句处TCL执行会停止。
执行窗口栏用于显示语句发送时的信息(tsend、tput等语句)以及TCL语法错误提示等。
发送窗口栏与批语句发送的功能基本一致,不过与批语句发送不同的是,批语句发送必须将目标窗口捕获到发送窗口列表当中,但TCL语言发送可以通过语句直接发送到目标窗口,比如使用“ksend”语句,它的语法是 “ksend 目标窗口句柄 字符串”,目标窗口的句柄可以通过移动“窗口捕获”栏中的放大镜图标到目标窗口处得到:
在这里插入图片描述
然后通过ksend语句发送,比如“ksend 66944 test123”。
也可以通过findw、findcw语句搜索窗口标题得到,比如下面的TCL语句:
在这里插入图片描述
先通过findw语句寻找窗口标题中含有“记事本”字符的窗口,然后将窗口的句柄存入变量i,再在此窗口中通过findcw语句寻找子窗口类型为“Edit”的子窗口,将子窗口的句柄存入b变量,然后通过ksend语句将字符串“test123”发送给子窗口。
*需要注意的是,用“ksend”语句发送字符时,窗口句柄应该为窗口内可输入控件的句柄(上例在变量b中),而不是整个窗口的句柄(变量i),子窗口的类型可在第4个页面“窗口信息”中查询或直接用窗口捕获功能查询。另外关闭再打开同一个程序,其窗口句柄是会发生变化的。
TCL语句编辑完成后,可以点“执行发送”按钮进行TCL命令的执行,在执行过程中可以点“暂停/恢复”按钮来控制执行的过程,也可以点停止发送按钮来中断执行过程。
另外在TCL语言发送窗口还增加了一些选项,具体作用如下:
 “执行前最小化”:因为Ksend的TCL语句可以控制键盘和鼠标操作,有时ksend自身的
界面会对程序的执行造成干扰,选中此选项可以在TCL执行前会将ksend自身的界面最小化。
 “执行时禁止屏保”:选中此选项在TCL执行过程中会禁止系统的屏幕保护,以免影响TCL语句执行,在长时间运行时有用,TCL执行完毕后,会自动恢复系统的屏幕保护设置。
 “窗口列表”:当前系统的窗口名及句柄列表。
 “快捷键”:在一些长时间的键盘、鼠标模拟过程中,如果中途想暂停或中止模拟是一件比较困难的事,尤其是键盘、鼠标模拟动作比较频繁的时候,这时,我们可以通过快捷键暂停或中止TCL语言的执行。缺省的“执行/停止”快捷键是“F2”,“暂停/恢复”快捷键是“F3”,用户可以自己进行修改设置。
*TCL语言模拟键盘和鼠标功能可以手工编写,也可以从屏幕录制中导入(在第3个页面“鼠标/键盘信息中”),一些键盘的键值和鼠标的定位位置也可以在第3个页面获得。
TCL发送字符间隔的延时时间和批语句发送的字符间隔时间一致。
具体的TCL扩展命令(包括语句发送、键盘/鼠标模拟、界面控制等)请参考本文的第4节。

键盘捕获和回放功能

键盘、鼠标模拟一般用于界面方面的维护和测试,或者应用于一些无法使用消息传递机制的场合。其功能界面如下:
在这里插入图片描述
功能界面分为两块:鼠标定位和键盘码对照。
键盘码对照主要应用在如下几个TCL扩展命令:
tsendkey、ksendkey、key_press、key_down、key_up
它们都需要以键盘码作为命令的参数。其中tsendkey、ksendkey为消息传递机制,key_press、key_down、key_up为键盘模拟机制。
鼠标定位栏中有“录制”按钮,点此按钮进行鼠标和键盘(包含了对键盘的录制)的录制,录制时,ksend界面缩小为屏幕右下角的一个小框:
在这里插入图片描述
在框中会实时显示鼠标当前的位置,此位置值可以用于“mouse_move”扩展命令。
点击停止后,录制的键盘和鼠标动作会在界面左边显示:
在这里插入图片描述
此时点“脚本生成”按钮,会将键盘和鼠标动作转换为TCL语言格式:
在这里插入图片描述
点击“拷贝至TCL窗口”按钮,则会将脚本拷贝至第二个页面(TCL语言发送),用户可以对脚本进行编辑、优化、执行,比如上面录制的是一个【鼠标点击windows开始菜单,然后输入“CMD”命令】的脚本。在录制时,键盘是单个字符捕捉的,即按“CMD”三个键需要6个动作:按下键盘C、松开键盘C、按下键盘M、松开键盘M、按下键盘D、松开键盘D,中间还有延时语句。我们可以对上面的脚本进行优化,将按“CMD”的动作用key_send语句完成:“key_send CMD”。key_send是模拟键盘发送字符串的扩展命令。
另外鼠标的点击动作也是分解的(先鼠标按下,再鼠标松开),我们可以将它用mouse_lclick(鼠标左键单击)命令合并,最后优化的脚本如下:
在这里插入图片描述
如果想循环上述操作,只需要将上述语句放入for语句循环中即可。
编辑完成后,可以点TCL界面的“执行发送”按钮进行键盘和鼠标的模拟。
键盘、鼠标动作录制完成后,也可以用“回放”按钮进行动作的简单回放操作。
功能界面上还有一个“细节捕获” 选项,去掉此选项后,程序只捕捉鼠标单击和键盘单击操作,这样脚本量会大大减少,但对于一些复杂操作比如按住鼠标选中一段文本,按Ctrl+C组合键复制文本等动作会被遗漏。由于上述的输入CMD命令的操作比较简单,我们可以去除“细节捕获”选项,其录制的结果如下:
在这里插入图片描述
可以看出,其脚本量相对于前次录制的脚本量大大减少。
键盘、鼠标模拟时,延时是一个比较关键的参数,太短的延时可能会导致错误,延时通过after语句完成,延时单位为毫秒,如“after 1000”表示延时1秒钟。

窗口信息

窗口信息功能主要用于分析窗口和子窗口中的控件信息,为“findw”、“findcw”等窗口扩展命令服务,其功能界面如下:
在这里插入图片描述
首先拖动“窗口捕获”中的图标选择目标窗口,选中的窗口边框会高亮显示,放开鼠标后,会显示窗口内的子窗口标题和类型,子窗口类型值可以在“findcw”命令中应用。
上图中的窗口信息显示的是windows记事本的窗口信息,可以看出,它包含了两个子窗体,一个为Edit类型,就是我们平时输入文本的地方,一个是msctls_statusbar32类型,即记事本的状态栏;需要注意的是,如果要用“ksend”的命令发送文本字符到记事本窗口,句柄应该为Edit控件的句柄(上面为394254),而不是记事本窗口的句柄(459784)。另外如果关
闭记事本再重新打开,窗口句柄是会发生变化的。
另外此功能界面还有一些附加功能,如更改窗口标题和属性等等。
当捕获的窗口类型为Combo、Listbox、Listview、Treeview时,子窗口列表中会显示这些窗口中的条目内容:
在这里插入图片描述

网页分析

一个WEB页面是由一系列的WEB元素组成,WEB元素包括了我们常见的URL链接、输入框、表单、按钮、文本等等。每一个元素都有其独特的标识和属性,当我们想通过程序操作WEB元素时,首先要做的是WEB元素识别。一些常见WEB元素的属性如下:
一个WEB页面是由一系列的WEB元素组成,WEB元素包括了我们常见的URL链接、输入框、表单、按钮、文本等等。每一个元素都有其独特的标识和属性,当我们想通过程序操作WEB元素时,首先要做的是WEB元素识别。一些常见WEB元素的属性如下:
链接: 链接测试
复选框:
单选框:
下拉框:

Test1
Test2
Test3

列表框:

测试1
测试2

输入框:
按钮:
表单:

上面的红体字部分表示了页面元素的类型,比如“href”就表示此页面元素是一个链接,“radio”则表示此元素是一个单选框。蓝体字部分表示的是识别此页面元素的ID或名字,假如一个页面中有多个输入框,要区别每个输入框,我们就需要通过输入框的名字或ID来进行区分,如:“name = "typeinme"”。 查看元素属性的一个方法是查看WEB页面的源代码(IE菜单“查看”-“源文件”),但效率较低,ksend的页面分析功能提供了一个更简单的方法来获取各个元素的属性。 比如我们需要对百度的网页进行分析: ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113163359920.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dvbGRlblJvbGFu,size_16,color_FFFFFF,t_70) 选取Ksend的“网页分析”,拖动放大镜图标到百度的输入框上,在Ksend界面会显示如下信息: ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113163421385.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dvbGRlblJvbGFu,size_16,color_FFFFFF,t_70) 输入框的属性为“”,再将图标拖动到搜索按钮上,可以显示按钮属性为“”。在图标移动过程中,元素信息可以根据鼠标所指的元素动态更新。 我们也可以修改页面上的元素属性,比如我们可以将“百度一下”按钮改名,在元素内容一栏,将“”改为“”,然后点“修改内容”按钮,页面就变成如下图形: 在捕获了WEB页面后,可以对页面进行一定程度的处理,比如使WEB页面可编辑、获取页面上的所有URL链接、设置页面背景色等等。 说明: 1、Ksend的网页分析功能只针对IE浏览器有效。 2、当我们想通过TCL扩展语法对WEB元素进行操作时,需要先捕获或查找WEB页面,一个WEB窗口的属性是“IEFrame”(可以通过Ksend的“窗口信息”查看),但真正的WEB页 面是其中的子窗口“Internet Explorer_Server”,所以我们要捕获的是类别为“Internet Explorer_Server”的页面句柄,而不是“IEFrame”的句柄。 捕获方法1: #先通过窗口标题找到WEB窗口 set i [findw “Huawei WebMail”] #再在WEB窗口中查找子窗口 set p [findcw $i "Internet Explorer_Server"] puts $p p就是我们要找的WEB页面句柄 3、在WEB页面中的下拉框、列表框与其他的页面元素不一样,它们是有自己的句柄的,其控件类型分别为“Internet Explorer_TridentLstBox”、“Internet Explorer_TridentCmboBx”,对它们需要和普通windows控件一样进行处理(如用tcombo控制选择条目)。 4、目前暂不支持Frame格式的嵌套页面。 ## TCL扩展语法说明 TCL扩展命令语法如下: ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113163855759.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dvbGRlblJvbGFu,size_16,color_FFFFFF,t_70) ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113163913704.png) ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113163931710.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dvbGRlblJvbGFu,size_16,color_FFFFFF,t_70) ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113164003255.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dvbGRlblJvbGFu,size_16,color_FFFFFF,t_70) ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113164020416.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dvbGRlblJvbGFu,size_16,color_FFFFFF,t_70) ![在这里插入图片描述](https://img-blog.csdnimg.cn/2021011316403722.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dvbGRlblJvbGFu,size_16,color_FFFFFF,t_70) ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113164053428.png) ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113164105648.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dvbGRlblJvbGFu,size_16,color_FFFFFF,t_70) ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113164123679.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dvbGRlblJvbGFu,size_16,color_FFFFFF,t_70)

其他说明

ksend程序同时支持命令行执行,如在Dos命令行下输入如下命令:
Ksend test.tcl
就可以在命令行执行test.tcl文件,无需进入程序界面,如需加路径,则按下面的格式:
Ksend c:\tcl\test.tcl
如果需要使用Package语句,需要将相关文件拷入程序执行文件所在的父目录中的LIB目录。比如Ksend程序在C:\test\bin目录,则被调用文件需要在C:\test\lib目录。

应用举例

多telnet自动登录

脚本功能说明:自动打开3个DOS窗口,并分别telnet 192.168.0.1~192.168.0.3等3个地址,自动输入登录密码“good”,登录后自动执行“dir”命令。
for { set i 1} {KaTeX parse error: Expected 'EOF', got '}' at position 5: i<=3}̲ {incr i} { #执行…i"
after 1000
#获取顶层窗口句柄,即刚打开的DOS窗口句柄
set j [gettop]
after 1000
ksend $j “good”
after 1000
ksend $j “dir”
after 1000
}
*注意:执行此脚本时,由于需要取顶层窗口的句柄,必须将ksend的“总在最顶层”选项关闭。
执行方式:将此脚本拷入TCL语言窗口,点“执行发送”即可。

批量路由添加

脚本功能说明:为计算机增加20条路由,从30.0.0.0到50.0.0.0。
#执行windows的CMD命令,打开DOS窗口
win cmd
#延时2秒,等待DOS窗口建立
after 2000
#获取顶层窗口句柄,即刚打开的DOS窗口句柄
set j [gettop]
for { set i 30} {$i<=50} {incr i} {
#执行路由添加命令
ksend $j "route add KaTeX parse error: Expected 'EOF', got '}' at position 51: …54" after 1000 }̲ 前面的DOS窗口建立和句柄捕…i<=50} {incr i} {
#执行路由添加命令
tsend “route add $i.0.0.0 mask 255.0.0.0 120.163.86.254”
after 1000
}
需要注意的是,有些窗口的字符不能发送太快,否则容易出现丢字符的现象,解决方法是增加行间延时时间和字符间间隔时间(行间延时通过after语句,字符间延时在第一个批语句发送页面中设置)。
同样的,可以用手工或自动的方式捕获其他的telnet、串口维护窗口,实现批量数据的配置和维护。

自动计算器

脚本功能说明:自动打开计算器程序,计算一段公式后自动关闭。
#提示用户是否启动程序
set i [msgbox 是否启动计算器程序 提示 4]
if {$i==7} {
msgbox 用户中止 提示 0
} else {
#启动计算器
win calc
#等待计算器窗口打开
winwaitopen 计算器
#发送公式
key_send 248*16=
after 2000
#关闭计算器窗口
winclose 计算器
winwaitclose 计算器

WEB自动登录

脚本功能说明:自动打开WEB页面,访问webmail并自动输入用户名、密码登录。
#打开IE窗口
win “C:\Program Files\Internet Explorer\IEXPLORE.EXE”
#延时等待
after 5000
#获取WEB窗口句柄
set i [gettop]
tput $i
#获取WEB页面句柄
set p [findcw $i “Internet Explorer_Server”]
tput $p
#打开网址
iopen $p “http://webmail”
after 3000
#输入用户名
iset $p name textfield y00118932
#输入密码
iset $p type password 123456
after 1000
#点击登录按钮
iclick $p type submit
after 1000
#关闭窗口
wclose $i

WEB窗口句柄的获取也可以通过窗口标题查找得到,可以将上面的“set i [gettop]”改为“set i [findw Webmail]”

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值