【问题标题】:how to access the asp.net application with QTP如何使用 QTP 访问 asp.net 应用程序
【发布时间】:2013-05-02 18:05:50
【问题描述】:

我有 asp.net 应用程序,使用 QTP 描述性代码测试该应用程序,但出现错误

找不到“[WebEdit]”对象的父对象“[Page]”(Page 类)。验证父属性是否与您的应用程序中当前显示的对象匹配。
第 (8) 行:".WebEdit("Page:=txtUserName").Set "raju""。

我的代码是

    Systemutil.Run("http://some ip/login.aspx")   
With Browser("creationtime:=0")
    With .page("title:=.*")
        With  .WebTable("Name:=log_left,")
            With .WebTable("Name:=leaf")
                    With .WebTable("Name:=txtUserName","Index:=0")
                            .WebEdit("Name:=txtUserName").Set "raju"
                                    .WebEdit("Name:=txtPassword").Set "raju"
                                        .WebButton("Name:=Button").Click
                    End With
                End With
                End With
            End With
            End With

现在我也有同样的问题,object spy 显示 3 个表,我想使用哪个表以及我想在该表中使用哪个属性。请给我建议。

【问题讨论】:

    标签: qtp


    【解决方案1】:

    您的测试似乎有多个问题。 当前阻碍您的第一个问题是Page 对象的描述。 Page 确实 支持 name 标识属性,但我怀疑它没有值 Page (也许您打算使用 @987654323 @)。

    由于Browser 在任何时候都只能拥有Page 对象,因此习惯上使用更具包容性的描述,例如"title:=.*(描述性编程默认使用正则表达式,因此.* 意味着任何东西)。

    一旦解决了该问题,您将面临 QTP 无法识别 WebTableWebEditWebButton 测试对象的问题。这些对象都不支持 Page 标识属性,也许您的意思是写 namehtml id

    在任何情况下,您都应该使用 object spy 来查看测试对象支持哪些属性以及特定测试对象具有什么值。

    【讨论】:

    • 感谢您的回复,我修改了我的问题,请验证并给我建议
    • 您根本不需要WebTables,请尝试删除它们。还可以尝试使用对象存储库而不是描述性编程进行测试,然后如果您确实需要描述性编程,请查看存储库中的描述以了解在描述性编程中使用什么描述。
    猜你喜欢
    • 2018-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多