QTP - 动态传递Web应用程序的浏览器/页面标题更改?

时间:2017-07-20 07:07:30

标签: testing automated-tests qtp

我在注销时需要一些帮助,我想准备独特的注销功能,但在这里我遇到的问题就像在处理应用程序时一样,根据关键字驱动它会有不同的模块,它会起作用。

我想点击Logout链接而不管页面标题,我想将动态更改的页面名称和标题传递给下面的代码。

pageTitleName = Browser("CreationTime:=0").Page("title:=.*").GetROProperty("title")
Print pageTitleName
Browser("pageTitleName").Page("pageTitleName").Link("name:=Logout").Click

我收到的错误是没有创建对象,请提供如何实现此目的

Browser("whatever").Page("whatever")......etc

2 个答案:

答案 0 :(得分:2)

pageTitleName =浏览器(“CreationTime:= 0”)。Page(“title:=。*”)。GetROProperty(“title”) 打印pageTitleName 浏览器( “pageTitleName”)页( “pageTitleName”)链接( “名称:=注销”)。按此

在我看来,在第一行中你正在使用对象&的描述性编程。阅读页面标题。 在第二行中,您直接使用该属性,就好像该对象存在于OR中一样。您正在这里混合对象识别部分。

您可以将第二行修改为

浏览器( “标题:=” &安培; pageTitleName)。第( “标题:=” &安培; pageTitleName)。链路( “名称:=注销”)点击

答案 1 :(得分:1)

根据您的要求,有一种名为SetTOProperty的方法。我假设您正在使用浏览器和页面的title属性,两者都在存储库中。

使用以下代码......

Browser("browser"). SetTOProperty ("title"," yourdynamictitle")
Browser("browser").Page("page"). SetTOProperty ("title"," yourdynamictitle")

Browser("browser").Page("page").Link("LogOut").Click

SetTOProperty设置指定的对象属性值运行时。

否则,如果您使用内联描述,请使用以下代码

Browser("title:=" & strBrowserTitle).Page("title:=" & strPageTitle).Link("name:=LogOut").Click

其中strBrowserTitle,strPageTitle是分别包含浏览器和页面标题值的字符串变量