QTP中描述性编程中的集合对象识别

时间:2015-11-27 20:57:09

标签: javascript qtp

晚上好,我是QTP的初学者,我需要帮助,我开发了一个复杂的程序,用于读取页面内的关税(用Javascript开发)和编程功能强大的描述性,对于每个未经处理的共享,识别对象.getROProperty ("InnerText")并将数据库放入变量中。 索引很多,但都具有相同的属性(micclass,html标签)只更改类和html id。

Class和html id将它们恢复为dataTable

我创建了一个特定的函数,它根据一对只能定义对象的集合值来处理索引的读取。

这是我需要识别对象的脚本(函数)的一部分:

Function recover_q_cvq (q_cvq_ogg, ogg_class)
                    ' Dim variables
                    Dim object_collection
                    Dim r_object
                    Dim rate_cvq
                    Dim count_object                                        
                    Dim rate_trim

                    print "Object:" & q_cvq_ogg
                    print "Class:" & ogg_class

                    ' recover rate with object collection, micclass, html tag, class, html id

                    Set object_collection = Description.Create()
                    object_collection("micclass").Value = "WebElement"
                    object_collection("html tag").Value = "DIV"
                    object_collection("class").Value = ogg_class
                    object_collection("html id").Value = q_cvq_ogg 
                    object_collection("visible").Value = "True"                     
                    Set r_object = Browser("(H) Gestione Quote").Page("(H) Gestione Quote").ChildObjects(object_collection)
                    r_object.RefreshObject
                    count_object = r_object.count

                    If count_object = 1 Then
                        rate_cvq = r_object(0).getROProperty("innertext")                        
                        print "Object rate: " &rate_cvq                         
                        rate_trim_cvq = Replace(rate_cvq,",","")                            
                        recover_q_cvq = rate_trim_cvq
       'empty variables object_collection,r_object,count_object

                        Set object_collection = nothing
                        Set r_object = nothing
                        Set count_object = nothing
                    Else                    
                        print "Object is not collected"           
                        print "Error:" & err.number
                        print DescribeResult(err.number)                 
                    End if
End Function

该脚本运行良好,我有变量rate_cvq对象,只有在执行期间我才会感兴趣,QTP会突然停止识别对象,没有明显的原因,尽管集合不完整,因此无法识别ChildObject收集宾语。从那时开始,直到测试结束时才识别出任何对象。

这种异常是随机发生的,从不在同一点发生,这样,在执行中检测到相同的速率,而在另一个中则没有。这让我觉得脚本没有问题。

有人可以帮帮我吗?我必须在脚本中添加一些其他属性吗?我哪里错了?非常感谢您的回复。

克里斯蒂

0 个答案:

没有答案