Determinación de valores de celdas en una tabla

Cuando se trabaja con tablas, es posible que se quiera extraer el valor de una celda determinada de la tabla. Existen varias formas de hacerlo, pero la más sencilla es consultar directamente la tabla.

El ejemplo muestra cómo crear un código VB.NET personalizado que aproveche el modelo de objeto de Functional Tester para extraer la información de una tabla. La muestra primero utiliza el método GetTestData para que Functional Tester devuelva un objeto TestDataTable que contenga todos los datos de una tabla. Con esta tabla en concreto, los métodos GetRowCount y GetColumnCount determinan el tamaño de dicha tabla. Finalmente, con estos números, el código recorre cada celda y utiliza el método GetCell para determinar el contenido de cada celda de la tabla. Los valores de las celdas se visualizan en la ventana de la consola.

#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 TableTest 
    Inherits TableTestHelper

    'Script Name   : TableTest
    'Generated     : Jul 17, 2006 3:48:02 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().Click(AtPath("Order"))
        Jmb().Click(AtPath("Order->View Existing Order Status..."))
        
        ' Frame: View Order Status
        NameComboB().Click()
        NameComboB().Click(AtText("Claire Stratus"))
        OK2().Click()
        
        ' Frame: View Existing Orders
        ExistingTable().Click(AtCell(AtRow("ORDER ID", "7", "ORDER DATE", "3/11/98", "STATUS", "Order Initiated"), AtColumn("ORDER ID")), AtPoint(26, 12))

        '  Query object to find out what kind of data it has.
        System.Console.WriteLine(ExistingTable().GetTestDataTypes().ToString())

        '  Declare variable for table.
        Dim MyTable As ITestDataTable
        MyTable = ExistingTable().GetTestData("contents")

        ' Print out total rows & columns.
        System.Console.WriteLine(String.Format("Total Rows: {0}", MyTable.GetRowCount()))
        System.Console.WriteLine(String.Format("Total Cols: {0}", 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 MyTable.GetColumnCount() - 1
                System.Console.WriteLine(String.Format("Value at cell {0}, {1}, {2}: {3}", ("Row"), ("Col"), ("is"), MyTable.GetCell(Row, Col)))
            Next Col
        Next Row

        Close().Click()

        ' Shut down ClassicsJava application
        ClassicsJava(ANY, MAY_EXIT).Close()
        Return Nothing
    End Function
End Class

Comentarios