Im folgenden Beispiel werden Tests an der Java-Anwendung Classics durchgeführt:
#Region " Script Header "
' Functional Test Script
' author Administrator
Imports Microsoft.VisualBasic
Imports Rational.Test.Ft
Imports Rational.Test.Ft.Object.Interfaces
Imports Rational.Test.Ft.Object.Interfaces.SAP
Imports Rational.Test.Ft.Object.Interfaces.Siebel
Imports Rational.Test.Ft.Script
Imports Rational.Test.Ft.Value
Imports Rational.Test.Ft.Vp
#End Region
Public Class GetListDataExample Inherits GetListDataExampleHelper
'Script Name : GetListDataExample
'Generated : Jun 29, 2006 3:14:01 PM
'Description : Functional Test Script
'Original Host : Windows XP x86 5.1 build 2600 Service Pack 2
'since 2006/06/29
'author Administrator
Public Function TestMain(ByVal args() As Object)
StartApp("ClassicsJavaA")
' Frame: ClassicsCD
Tree2().Click(AtPath("Composers->Schubert->Location(PLUS_MINUS)"))
Tree2().Click(AtPath("Composers->Schubert->Die schone Mullerin, Op. 25"))
PlaceOrder().Click()
' Declare variables for list
Dim nameList As ITestDataList
Dim nameListElements As ITestDataElementList
Dim nameListElement As ITestDataElement
' Frame: Member Logon
NameCombo().WaitForExistence()
'Available test data types: {selected=Selected List Element,
' list=List Elements}
Dim Ht As System.Collections.Hashtable = NameCombo().GetTestDataTypes()
System.Console.WriteLine(Ht)
' Get all elements
Dim testdata As ITestData
nameList = CType(NameCombo().GetTestData("list"), TestDataList)
nameListElements = nameList.GetElements()
Dim ListElemCount As Integer
ListElemCount = nameList.GetElementCount()
Dim I As Integer
For I = 0 To ListElemCount - 1
nameListElement = nameListElements.GetElement(I)
System.Console.WriteLine(nameListElement.GetElement().ToString())
' Click on each element
NameCombo().Click()
NameCombo().Click(AtText(nameListElement.GetElement().ToString()))
Next I
' Frame: Member Logon
Cancel().Click()
' Frame: ClassicsCD
ClassicsJava(ANY,MAY_EXIT).Close()
End Function
End Class
In diesem Beispiel wird zuerst die Java-Anwendung Classics geöffnet. Anschließend werden in der Baumstruktur ein Komponist und ein Album (Komponist = Schubert, Album = "Die Schone Muellerin") ausgewählt, und dann wird auf die Schaltfläche "Place Order" (Auftrag platzieren) geklickt. In der nächsten Anzeige (Dialog zur Mitgliederanmeldung) extrahiert der Mustercode die Liste mit den Werten aus dem Kombinationsfeld und zeigt sie im Konsolfenster an. Danach wird auf jedes einzelne Listenelement geklickt.
Der erste Schritt besteht darin, die Daten mit der Methode GetTestData aus der Steuerung zu extrahieren:
Dim testdata As ITestData
nameList = CType(NameCombo().GetTestData("list"), TestDataList)
Mit dem folgenden Code stellen Sie fest, welche Datentypen für ein Steuerelement zur Verfügung stehen:
Dim Ht As System.Collections.Hashtable = NameCombo().GetTestDataTypes() System.Console.WriteLine(Ht)
Mit diesem Datenbestand können Sie eine Feldgruppe mit allen Elementen der Liste erstellen. Gehen Sie dazu wie folgt vor:
Dim nameListElements As ITestDataElementList nameListElements = nameList.GetElements()
Anhand der Listenelemente können Sie eine Schleife erstellen, die auf jedes Listenelement zugreift. Verwenden Sie die Methode GetElementCount, um die Anzahl der Listenelemente zu bestimmen. Die Methode GetElement dient dazu, die Werte der Listenelemente zu extrahieren. In diesem Beispiel wird dazu folgender Code verwendet:
Dim ListElemCount As Integer
ListElemCount = nameList.GetElementCount()
Dim I As Integer
For I = 0 To ListElemCount - 1
nameListElement = nameListElements.GetElement(I)
System.Console.WriteLine(nameListElement.GetElement().ToString())
' Click on each element
NameCombo().Click()
NameCombo().Click(AtText(nameListElement.GetElement().ToString()))
Next I