QTP自动化测试培训:描述编程之WebElement

QTP自动化测试培训:描述编程之WebElement

  

通过描述性编程技术,来描述出来输入框:

set po=browser("creationtime:=0").page("micclass:=page") 

set desc=description.creatre()

odesc("micclass").value="WebEdit"

odesc("html tag").value="input"

…………

 

在html中输入框的html tag除了input其实还有textarea等

<textarea rows="3" cols="20">
    内容.........内容
</textarea>

 

description的item属性支持正则表达式,默认开关打开

odesc.Item.RegularExpression=true

因此,可以修改成:

odesc("micclass").value="WebEdit"

odesc.Item.RegularExpression=true

odesc("html tag").value="input|textarea",

这样就支持input和testarea两种文本框的形式

 

但在一些js框架中,输入框的tag就不至于这些了,可能就是div,而且用qtp识别出来就是webelement,而并非webedit,我们知道,webedit和webelement属于继承关系,可以修改成这样

 

set desc=description.creatre()

‘odesc.Item.RegularExpression=true

odesc("micclass").value="WebElement"  

odesc("html tag").value="input|textarea|div"

 

完整脚本

‘文本框输入

function sendkeys(propertyname,propertyvalue,value)

      set po=browser("creationtime:=0").page("micclass:=page") 

      ‘po也可以写为方法的参数

      set desc=description.creatre()

     odesc("micclass").value="WebElement"

      odesc("html tag").value="input|textarea|div"   

      '把所需要的tag标记都可以写进去

      odesc(propertyname).value=propertyvalue

     set child=po.childobject(odesc)

      ochild(0).set value

      ’多个元素时,index也可以作为参数

end function

 

这样一来,只需要封装操作类型,而对于元素的类型,则都可以用WebElement来代替,然后html tag则使用正则表达式符号“|”来匹配任意tag的其中的一个

调用:

call sendkeys("xpath","//input[@name='username']","test001")

 

可以看出,所有网页元素,它的micclass其实都可以写成webelement。

如果qtp识别不出的web元素,可以通过其他的辅助工具来帮助来识别


你可能感兴趣的:(软件测试开发)