按键精灵的网页自动化测试

web按键精灵使用文档

    按键精灵是一款熟知的自动化工具以及平台,目前最为普遍的,是使用其编写网页、网游的脚本程序,为各玩家提供便捷的刷钱、升级等服务;而我今天在这里给大家介绍的,当然是属于办公使用的按键精灵的一个子功能----WEB按键精灵。

    随着时代的发展,网络游戏不再拘泥于传统软件所使用的焦点触点式的代码方式,衍生出的就是WEB按键精灵式的基于网页元素编写代码的方式。

    按键精灵使用代码是VBS语言,且拥有较大的资源库,让新手可以零成本快速学习,下面我将做一个简单的例子向大家介绍WEB按键精灵的实际应用:

    首页,打开WEB按键精灵快捷方式:

是不是和普通的IE没什么区别?接下来我们只要按照我们的需求进行访问,比如:我将http://www.symptomfind.com/ 作为测试对象站点

比如,我们要搜索一个health的关键字,然后进入search页面,查找是否希望搜索出的文章是否在search页面中,再进入这个文章页,检查是否文章内容正确;此时,我们需要使用浏览器自带的工具----网页分析,点击该功能键;如图:

浏览器下端弹出了网页元素分析的分析框,显示了未启动,我们需要按F9来开启它,然后将鼠标移动到“输入框”上,再按F9按钮,这个分析框就将该模块的分析数据显示在我们眼前。

为了保证这个特征字符串是我们所需要的,我们点击一下旁边的测试特征串按钮,可以看到对应元素会在页面中闪烁,好了,我们这串正确的元素特征字符串复制到文本中,待我们编辑代码时使用;如图:

接下来将Find按钮的元素特种字符串也记录在文本中,方法如上;如图:

我们在输入框中输入health关键词,然后点击find按钮,进入search页面,如图:

比如我们就将搜索结果集第一个搜索结果为测试对象,我们将其的元素特征码记录码记录下来,然后再进入该文章页面,我们将页面中的某段文字来做为检查点;如图:

记录该元素特征码,然后打开按键精灵的脚本编辑界面,我们将用到的脚本为WEB网页插件下的命令;如图:

展开子集,我们看到一堆命令,是不是眼有花,我们慢慢梳理,我们暂时只用一些常用命令即可;首先我们的第一个操作是打开网址,那我们点击“GO 打开地址”;如图:

我们看到点击后,下方出现一个小框,我们在网页地址下的地址输入框中输入测试地址,然后点击插入;如图

注意,地址两边一定要加上英文的双引号,不然会报语法错误;然后我们将使用到htmlinput参数(表单输入)htmlclick(点击事件)以及htmlexists(验证参数)参数,参数的详细介绍在后续会介绍,我们将相关元素特征码填入表单,插入即可;如图:

然后将开启浏览器的代码加上,如图:

好了,我们可以试运行下,点击调试->运行;结果发现页面还没跳转,代码就跑完了,那我们添加一点延迟,让代码跑的慢一点;如图:

我们再试运行下,发现跑完也不知道对还是不对,那我们加一个IF判断,最后我们的验证到了没有,如图:

这段判断是指,如果获取到数据,就将数据在页面的展现次数表示出来(一般就一次),如果没有,就显示BAD;接下来我们再试运行下;如图:

好了,我们的第一个检查脚本已经完成;

接下来,详细介绍下我们常用的函数:

2.1.HtmlSelect命令

1)HtmlSelect命令只能够更具Select项的值来进行选择,注意这里不是显示在Select项上的文字,而是该项的value。

一个典型的下拉框HTML代码如下:

<select name="city">

< option value="1">北京</option>

< option value="2">上海</option>

< option value="3">广州</option>

< /select>

这里如果要选择上海,需要选择值为2的项;

2)级联的下拉列表组合。

在有的网页中,会有几个级联的下拉列表,后一个下拉框会随前一个框的值变化而发生变化,典型的有注册页面上的省份城市选择,HtmlSelect命令能够触发Onchange事件,会导致后一个下拉框值发生变化,但是如果执行脚本太快,而导致后一个未能选中正确的值,可以在前一个HtmlSelect后加上适当的延时;

3)多选表单中的列表控件;有的列表支持多选,在有一些个求职网站中,职业是可以多选的,这时候可以用%将多个需要选择的值连接起来传递给HtmlSelect命令实现多选;

 

2.2.HtmlExists命令

HtmlExists命令,能够判断指定特征的元素是否存在,并能够返回具备该特征的元素的个数。这个命令能够用来判断某个元素是否存在,如果为0证明不存在;

 

2.3.HtmlGet命令

 

HtmlGet命令比较复杂,但是功能也非常强大,该命令具备两个参数,第一个参数为获取类型,目前支持的值如下所示:

 

序号

适用对象

1

text

得到指定元素的文本值,对应DOM属性innerText

2

html

得到指定元素内部的HTML代码,对应DOM属性innerHTML

3

outerHtml

得到元素整体的HTML代码,对应DOM属性的outerHTML

4

value

得到元素的Value值,用于获取表单元素内部的值

5

src

得到图像元素的src属性,用于IMG标签对象

6

href

得到链接元素的链接地址,用于A标签

7

…其他合法的HTML属性名称

其他属性,如果您使用的是合法的属性名称,就能够返回对应的值
如何才是合法的属性?请参阅HTML标准;

     

 

第二个参数为特征字符串,如果匹配多个,只能返回第一个元素的值;

例如,获得淘宝货物价格:

Plugin price=Web.HtmlGet("text","id:id_Price")

获取某个表单文本的值

Plugin email=Web.HtmlGet("value","name:Email")

通过以上的学习,是不是觉得很简单,而我们只要根据实际的情况,可以增加更多的参数,甚至可以在页面中增加一些相对坐标值来达到检查的目的。关于更深一层的按键精灵使用,将在下一个课程中向大家介绍,谢谢。

原文地址:https://www.cnblogs.com/leonxiaosi/p/2901922.html