技术开发 频道

透析QTP自动化测试框架SAFFRON

4.8 在文本框输入字符串
  在SAFFRON中,可以使用EnterTextIn函数来给输入框(WebEdit对象)输入字符串。EnterTextIn函数的定义如下所示:
     ' Enters text into an edit field
     ' objname - name of the control -- use Object Spy if you don't know what it is
     ' text    - the text to enter into the control
     Public Function EnterTextIn (objname, text)
      localDesc = ""
      rval = true
      If thirdlevel <> "" Then
       localDesc = GenerateDescription(level(2))
      Else
       localDesc = GenerateDescription(level(1))
      End If
    
      AutoSync()
    
      localDesc = localdesc & GenerateObjectDescription("WebEdit", "name:=" & objname)
      Execute localDesc & "Set (" & Quote(text) & ")"
      Report micPass, "Enter Text", "Text: " & Quote(text) & " was entered into " & Quote(objname)
      EnterTextIn = rval 
     End Function

  例如,如果我们要在如图所示的登录界面中输入用户名和密码,则可以使用SAFFRON的EnterTextIn函数来实现。

  测试脚本可以这样编写:
     ' 输入用户名
     EnterTextIn "username","chennengji"
     ' 输入密码
     EnterTextIn "password","123"

4.9 读取文本框的字符串
  在SAFFRON中,可以使用EnterTextIn函数来给输入框(WebEdit对象)输入字符串。对应的有一个名为GetTextFrom的函数,用于读取输入框和文本列表的字符串,GetTextFrom的定义如下所示:
     ' Obtains text from a control
     ' objtype - is the type of control the get the text from
     ' objname - is the name of the control -- use Object Spy if you don't know the name
     ' returns - the text of the control
     Public Function GetTextFrom (objtype, objname)
      text = ""
      localDesc = ""
      If thirdlevel <> "" Then
       localDesc = GenerateDescription(level(2))
      Else
       localDesc = GenerateDescription(level(1))
      End If
    
      AutoSync()
    
      Select Case objtype
       Case "WebEdit"
        Execute "text = " & localDesc & GenerateObjectDescription("WebEdit", "name:=" & objname) & "GetROProperty (" & Quote("value") & ")"
       Case "WebList"
        Execute "text = " & localDesc & GenerateObjectDescription("WebList", "name:=" & objname) & "GetROProperty (" & Quote("value") & ")"
      End Select
      Report micPass, "Capture Text", "Text: " & Quote(text) & " was captured from the control " & Quote(objname)
      GetTextFrom = text
     End Function

  假设我们需要读取如图所示的界面中的“Departure City”和“Arrival City”这两个文本列表(WebList对象)中的字符串,则可以使用GetTextFrom函数。

  测试脚本可以这样编写:
     ' 获取航班起始城市
     DepartureCity = GetTextFrom( "WebList","depart")
     ' 获取航班终点城市
     ArrivalCity = GetTextFrom( "WebList","arrive")

  当然,也可以使用相同的函数来读取文本框(WebEdit对象)的字符串,例如下面的脚本读取“NO. of Passengers”对应的文本框中的字符串:
     ' 获取乘客数量
     PassengerNumber = GetTextFrom( "WebEdit","numPassengers")

0
相关文章