Vbscript 测试场景以检查预订系统中的Redbus.in是否有座位

Vbscript 测试场景以检查预订系统中的Redbus.in是否有座位,vbscript,qtp,Vbscript,Qtp,地点:: 输入起始日期、截止日期,然后单击搜索按钮 点击查看票价下方的座位 出现一个新的弹出窗口,用户可以在其中选择自己选择的座位 在这里,已经预订的座位将被禁用 我想在excel或数据表中获取可预订的座位 请指导我从第3步开始,我将为第1步和第2步编写代码。所以您只需要第3步的帮助。。我想没有任何属性或方法可以检查对象是否已启用或禁用。如果我错了,请纠正我。 您的问题很有意义,因为在任何项目中都可能遇到这种情况。基本上,您必须检查弹出窗口中“可用座位”对象和“占用座位”对象中的哪个属性不同。在

地点::

  • 输入起始日期、截止日期,然后单击搜索按钮
  • 点击查看票价下方的座位
  • 出现一个新的弹出窗口,用户可以在其中选择自己选择的座位
  • 在这里,已经预订的座位将被禁用
  • 我想在excel或数据表中获取可预订的座位

  • 请指导我从第3步开始,我将为第1步和第2步编写代码。

    所以您只需要第3步的帮助。。我想没有任何属性或方法可以检查对象是否已启用或禁用。如果我错了,请纠正我。
    您的问题很有意义,因为在任何项目中都可能遇到这种情况。

    基本上,您必须检查弹出窗口中“可用座位”对象和“占用座位”对象中的哪个属性不同。在给定的redbus站点中,对于未预订的座位,“class”属性将其与值“AvailableSet”区分开来

    以下是步骤3至5的代码:

    'seats are of object type link, hence creating description object for collection link child objects
    
    Set oDesc = Description.Create()
    oDesc("micclass").Value = "Link"
    
    'Here Seatmap is pop-up window which has collection of seats link
    
    Set seatlinks = Browser("Online Bus Booking: Book").Page("Book Ticket - Search Buses").WebElement("Seatmap").ChildObjects(oDesc)
    
    For i = 0 To seatlinks.count - 1  Step 1 
     DataTable.SetCurrentRow(i+1)
    
    If seatlinks(i).GetROProperty("class") = "availableSeat" Then
    
        DataTable.Value("AvailableSeats","Global") = seatlinks(i).GetROProperty("innertext") & " -Seat Available"
    
    Else
    
    DataTable.Value("AvailableSeats","Global") = seatlinks(i).GetROProperty("innertext") & " -Seat Occupied"
    End If
    
    Next
    

    因此,它将在您的全局数据表中列出“可用”和“已占用”座位的列表以及座位号。

    您是否在对象存储库中确定了弹出窗口及其控件?这个问题似乎与主题无关,因为它是特定于某个特定站点的,而且您对该问题甚至没有表现出最低程度的理解。因此,这是一个“为我做我的工作/家庭作业”的请求,而不是一个有用的问题。@Admdew:我已经完成了步骤1和步骤2,我被困在步骤3,因为我不知道如何让QTP了解哪些座位已启用,以及如何编写测试脚本来显示可预订的座位。如果我需要提供更多细节,请告诉我。@Xiaofu:我正在尝试自动化类似的测试场景,因为我无法共享我找到的redbus的AUT链接。在符合我的要求的情况下,我将为场景的其余部分编写测试脚本。我只需要专家指导,以了解如何自动化此场景。如果你想要更多的细节,我会和你分享。这不是答案,更适合作为评论。我知道你还没有这方面的代表,我通常会为你添加一条评论,但OP基本上在她最近的评论中做出了回应。