Bei der Arbeit mit Tabellen kann es erforderlich werden, den Wert einer bestimmten Zelle der Tabelle zu extrahieren. Das kann auf unterschiedliche Art und Weise geschehen. Am einfachsten gestaltet sich die Direktabfrage der Tabelle.
Im folgenden Beispiel wird gezeigt, wie Sie eigenen VB.NET-Code erstellen können, um über das Functional Test-Objektmodell Daten aus einer HTML-Tabelle auszulesen. Dabei kommt zunächst die Methode GetTestData
zum Einsatz, über die Functional Test dazu veranlasst wird, ein TestDataTable
-Objekt mit allen Daten einer HTML-Tabelle zu liefern. Mit dieser Datentabelle wird über die Methoden GetRowCount
und GetColumnCount
die Größe der HTML-Tabelle bestimmt. Mit diesen Angaben arbeitet sich der Code abschließend durch die einzelnen Zellen und bedient sich der Methode GetCell
, um den Inhalt jeder einzelnen Zelle der Tabelle zu bestimmen. Die Werte in den Zellen werden im Konsolfenster angezeigt.
Imports Rational.Test.Ft Imports Rational.Test.Ft.Object.Interfaces Imports Rational.Test.Ft.Script Imports Rational.Test.Ft.Value Imports Rational.Test.Ft.Vp Public Class TableTest Inherits TableTestHelper ' Script Name : TableTest ' Generated : Sep 27, 2005 2:54:34 PM ' Description : Functional Test Script ' since 2005/09/27 ' author Administrator Public Function TestMain (ByVal args() As Object) StartApp("TableTest") ' Browser: MS Internet Explorer ' Document: Table Test Page: file: ' D:\Temp\TableTest.html ' Click on table to generate an object in the Object Map. Table_AutoNumber1().Click(AtCell(AtRow(AtIndex(1)), _ AtColumn AtIndex(1)))) ' Query object to find out what kind of data it has. System.Console.WriteLine _ (Table_AutoNumber1().GetTestDataTypes().ToString()) ' Declare variable for table. Dim MyTable As ITestDataTable MyTable = Table_AutoNumber1().GetTestData("grid") ' Print out total rows & columns. System.Console.WriteLine("Total Rows: " + MyTable.GetRowCount()) System.Console.WriteLine("Total Cols: " + _ MyTable.GetColumnCount()) ' Print out cell values. Dim Row As Integer For Row = 0 To MyTable.GetRowCount() - 1 Dim Col As Integer For Col = 0 To Table.GetColumnCount() - 1 System.Console.WriteLine _ ("Value at cell (" + Row+"," Col+") is: " _ + MyTable.GetCell(Row,Col)) Next Col Next Row
Browser_htmlBrowser(Document_TableTestPage(),MAY_EXIT).Close() End Function End Class
Nutzungsbedingungen | Feedback
(C) Copyright IBM Corporation 2002, 2004. Alle Rechte vorbehalten.