QTP脚本下标越界的解决办法(图文详解)

 时间:2026-02-16 06:41:21

1、VBS(VBScript)作为一种脚本语音,很多时候大家将VBS看作是VB语言的一个简化版,它们之间存在着继承的关系,在这里小编为什么要提到VB语言呢?因为小编即将会用VB语言里面的东西来阐述下标越界。

QTP脚本下标越界的解决办法(图文详解)

2、我们通常所遇到的下标越界发生在数组的使用中,所谓下标对应的还有上标,读者可以把上标与下标之间看作是一个范围,而发生下标越界,就是操作者引用了不存在的数组元素,超出的数组元素的范围,从而引发下标越界。

QTP脚本下标越界的解决办法(图文详解)

3、下面我为大家写一个简单的脚本例子,来重现下标越界。

例子:

Dim array_test '定义一个数组

array_test=array("张三","李四","王二") ’为数组赋值

msgbox array_test(3) ’打印出数组第3个元素

QTP脚本下标越界的解决办法(图文详解)

4、读者从步骤3的例子中有没有发现什么问题?小编第一步就是定义了一个数组名字叫array_test,第二步为这个数组赋值3个数组元素,第三步打印出第3个数组元素。但是脚本运行却发生错误,提示"下标越界"如下图:

QTP脚本下标越界的解决办法(图文详解)

5、数组明明定义了3个数组元素,为什么将第三个元素打印出来会提示错误呢?接着读者就跟随小编的脚步进行排查一下吧。

array_test=array("张三","李四","王二")

QTP脚本下标越界的解决办法(图文详解)

6、排查方法:

Dim array_test

array_test=array("张三","李四","王二")

For i=1 to 3  '循环打印出数组中的元素

print  array_test(i)&i

Next

******************************************

打印出的结果:

李四1

王二2

QTP脚本下标越界的解决办法(图文详解)

7、解说:

大家从打印出的结果可以看出循环打印的第一个数组元素是“李四”,但是从数组定义中“李四”应该是第二个元素,说到这里读者可能就会明白脚本在读取数组时是从数组0开始读取,所以在循环1到3时就只打印了数组第2个和第3个元素。

QTP脚本下标越界的解决办法(图文详解)

8、修改办法:

将上面给出的例子中的打印msgbox array_test(3)改为msgbox array_test(2)即可以解决下标越界的问题。

Dim array_test '定义一个数组

array_test=array("张三","李四","王二") ’为数组赋值

msgbox array_test(2) ’打印出数组第3个元素

QTP脚本下标越界的解决办法(图文详解)

  • 自走棋闪退怎么解决
  • 怎么切换手机语言
  • 英雄联盟如何获得赵信的黑暗骑士皮肤
  • 雷电模拟器如何自定义首页壁纸?
  • 古墓丽影崛起主线攻略85:第三次用击中直升机
  • 热门搜索
    西安旅游攻略4天 酷走旅游网 通化旅游景点大全 春季旅游好去处 庄河旅游景点大全 鸡冠山旅游攻略 珠海户外旅游网 1月份去哪里旅游好 南通旅游公司 名古屋旅游攻略