琛杰 发表于 2010-5-6 11:15:10

奇怪问题!描述性编程的两种方式

'        oLink("name").value = "删除"
'        oLink("html id").value = "bt_delete"
'        oLink("index").value = "0"
'        Browser("欢迎您使用本系统").Page("欢迎您使用本系统").Frame(oFrame).Link(oLink).Click
        Browser("欢迎您使用本系统").Page("欢迎您使用本系统").Frame(oFrame).Link("name:=删除","html id:=bt_delete","index:=0").Click
今天运行QTP脚本出现了一个奇怪的问题?我用注释掉的描述性编程,昨天能运行通过,今天就不可以了。
但是改成下面一句又可以成功运行了,难道不是一样吗?请大家指教!
还有一个情况,昨天我选择的是一个流程中的某几个部分,执行注释的代码Link对象是可以识别的,
但是整个流程执行下来的话,注释代码的Link对象就不能识别了,必须要改成下面的描述方式才能执行。

琛杰 发表于 2010-5-6 12:56:05

:Q 怎么没有人救我啊!

Haereticus 发表于 2010-5-6 14:56:04

index不是对象本身的属性,是QTP自己加的。

琛杰 发表于 2010-5-6 16:21:21

回楼上

还有别的对象没有index属性也是这样的情况。这里的index去掉也是可以识别的,我只是加了个多余的

琛杰 发表于 2010-5-7 08:47:07

为什么我的问题总是无人解答啊:Q

yujie6832 发表于 2010-5-7 09:54:54

你注视掉了那怎么可能能通过,你这问题真奇怪,是新手常犯错误,你昨天能运行成功,一定是没注释掉,而你以为注释掉了,呵呵~QTP不会出现此类的不稳定BUG的:)

zchtest 发表于 2010-5-7 10:31:10

注释的方法不能唯一定位到对象

我觉得是不是在你当前页面下,通过那三个属性无法定位到这个对象,一些其它对象也具有这几个特点,所以就行不通了。
而你下面的那个方法已经很具体了:是在Browser("欢迎您使用本系统").Page("欢迎您使用本系统").Frame(oFrame)下面去找匹配的三个属性的对象,就具有唯一性了。

琛杰 发表于 2010-5-7 10:46:13

回7#

上面和下面的方法不是一样吗?都描述了3个属性:(

琛杰 发表于 2010-5-7 10:51:37

回QTP老菜鸟

我确信没有犯这个错误,所以我才觉得很奇怪。
本来我就只有写了注释掉的那几条语句,头一天能执行成功,但是第二天跑脚本时就不能识别的,所以我就注释掉了那几句话
换成了行描述方式,就是现在没有注释的,能运行成功的。
两种方式描述的属性不是一样吗?

琛杰 发表于 2010-5-7 17:57:03

自己顶上来

如题:(
页: [1]
查看完整版本: 奇怪问题!描述性编程的两种方式