In diesem 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 GetGridDataExample Inherits GetGridDataExampleHelper 'Script Name : GetGridDataExample 'Generated : Jul 17, 2006 2:51:15 PM 'Description : Functional Test Script 'Original Host : Windows XP x86 5.1 build 2600 Service Pack 2 'since 2006/07/17 'author Administrator Public Function TestMain(ByVal args() As Object) As Object StartApp("ClassicsJavaA") ' Navigate to Existing Order Grid Jmb().WaitForExistence() Jmb().Click(AtPath("Order")) Jmb().Click(AtPath("Order->View Existing Order Status...")) ' Frame: View Order Status NameComboB().Click() NameComboB().Click(AtText("Claire Stratus")) OK().Click() ' Wait for table to be created ExistingTable().WaitForExistence() ' Get the data for the table Dim OrderTable As ITestDataTable OrderTable = ExistingTable().GetTestData("contents") ' Display the available data types for the grid, total rows and columns. System.Console.WriteLine(String.Format("Available Data Types: {0}", ExistingTable().GetTestDataTypes())) System.Console.WriteLine(String.Format("Total Rows in table : {0}", OrderTable.GetRowCount())) System.Console.WriteLine(String.Format("Total Cols in table : {0}", OrderTable.GetColumnCount())) ' Cycle through all rows Dim Row As Integer For Row = 0 To OrderTable.GetRowCount() - 1 ' Cycle through all columns Dim Col As Integer For Col = 0 To OrderTable.GetColumnCount() - 1 ' Print out values of cells at (Row, Col) coordinates System.Console.WriteLine(String.Format("Row {0}, {1}: {2}", Row, OrderTable.GetColumnHeader(Col), OrderTable.GetCell(Row, Col))) Next Col Next Row ' Close the frame Close().Click() ' Shut down Classics Java Application ClassicsJava(ANY, MAY_EXIT).Close() Return Nothing End Function End Class
In diesem Beispiel navigieren Sie zur Anzeige "View Existing Orders" (Vorhandene Aufträge anzeigen) der Anwendung. Mit dem Code in diesem Beispiel werden die entsprechenden Werte aus den Zellen des Rasters ausgelesen und im Konsolfenster angezeigt.
Im ersten Schritt verwenden Sie die Methode GetTestData, um die Daten aus der Steuerung zu extrahieren. Dazu wird folgende Syntax verwendet:
Dim OrderTable As ITestDataTable OrderTable = ExistingTableTable().GetTestData("contents")
Anhand dieses Datenbestands können Sie über die Methoden GetRowCount und GetColumnCount die Gesamtzahl der Zeilen und Spalten bestimmen. Mit der Methode GetTestDataTypes können Sie sich außerdem über die in der Tabelle enthaltenen Datentypen informieren. Mit dem folgenden Code werden die Ergebnisse dieser Abfragen an das Konsolfenster gesendet.
System.Console.WriteLine(String.Format("Available Data Types: {0}", ExistingTable().GetTestDataTypes())) System.Console.WriteLine(String.Format("Total Rows in table : {0}", OrderTable.GetRowCount())) System.Console.WriteLine(String.Format("Total Cols in table : {0}", OrderTable.GetColumnCount()))
Im nächsten Schritt werden die Werte der einzelnen Zellen gedruckt. Dabei wird zum Navigieren durch die Zeilen und Spalten des Rasters eine for-Schleife verwendet.
' Cycle through all rows Dim Row As Integer For Row = 0 To OrderTable.GetRowCount() - 1 ' Cycle through all columns Dim Col As Integer For Col = 0 To OrderTable.GetColumnCount() - 1 ' Print out values of cells at (Row, Col) coordinates System.Console.WriteLine(String.Format("Row {0}, {1}: {2}", Row, OrderTable.GetColumnHeader(Col), OrderTable.GetCell(Row, Col))) Next Col Next Row
In dem Beispielscript wird zum Drucken des Werts der aktuellen Zelle die Methode GetCell angewendet. Beachten Sie außerdem, dass über die Methode GetColumnHeader die Kopfzeile der aktuellen Spalte ausgedruckt wird. Wenn Sie mit einem Raster arbeiten, beginnt die Nummerierung von Zeilen und Spalten mit dem Wert 0. Eine Ausnahme bilden die beiden Methoden GetRowCount und GetColumnCount, bei denen die Nummerierung mit dem Wert 1 beginnt.