Détermination des valeurs de cellule dans une table

Lorsque vous utilisez une table Java ou HTML, vous pouvez être amené à extraire la valeur d'une cellule particulière. Pour ce faire, il existe de nombreuses façons de procéder, l'une d'elles consistant à interroger directement la table.

L'exemple suivant explique comment créer un code Java personnalisé qui exploite le modèle objet de Functional Tester pour extraire des informations d'une table. Il utilise d'abord la méthode getTestData pour que Functional Tester renvoie un objet TestDataTable contenant toutes les données de la table. Les méthodes getRowCount et getColumnCount sont ensuite utilisées pour déterminer la taille de la table (nombre de lignes et nombre de colonnes). Une fois ces valeurs connues, le code peut parcourir chaque cellule de la table et utiliser la méthode getCell pour en déterminer le contenu. Les valeurs lues dans les cellules sont affichées dans la console.

import resources.TableTestHelper;

import com.rational.test.ft.*;
import com.rational.test.ft.object.interfaces.*;
import com.rational.test.ft.object.interfaces.SAP.*;
import com.rational.test.ft.object.interfaces.siebel.*;
import com.rational.test.ft.script.*;
import com.rational.test.ft.value.*;
import com.rational.test.ft.vp.*;

/**
 * Description : Functional Test Script
 * @author Administrator
 */
public class TableTest extends TableTestHelper
{
	/**
	 * Script Name   : TableTest
	 * Generated     : Jul 17, 2006 1:56:28 PM
	 * Description   : Functional Test Script
	 * Original Host : WinNT Version 5.1  Build 2600 (S)
	 * 
	 * @since  2006/07/17
	 * @author Administrator
	 */
	public void testMain (Object[] args) 
	{
		startApp("ClassicsJavaA");
		
		// Fenêtre : ClassicsCD
		jmb().click(atPath("Order"));
		jmb().click(atPath("Order->View Existing Order Status..."));
		
		// Fenêtre : View Order Status
		nameComboB().click();
		nameComboB().click(atText("Claire Stratus"));
		ok().click();
		
		// Frame: View Existing Orders
		existingTable().click(atCell(atRow("ORDER ID", "7", "ORDER DATE", "3/11/98", "STATUS", "Order Initiated"), atColumn("ORDER ID")),      atPoint(33,2));

		//Interroger l'objet pour déterminer le type de données qu'il contient.
		  System.out.println (existingTable().getTestDataTypes());
		  
		  //Déclarer une variable pour la table.
		  ITestDataTable myTable;
		  myTable = (ITestDataTable)existingTable().getTestData("contents");
		  
		  //Afficher le nombre de lignes et le nombre de colonnes.
		  System.out.println ("Nombre total de lignes : " + myTable.getRowCount());
		  System.out.println ("Nombre total de colonnes : " + myTable.getColumnCount());
		  
		  //Afficher les valeurs des cellules.
		  for (int row =0;row < myTable.getRowCount();row++)
		  {
		      for (int col = 0;col < myTable.getColumnCount();col++)
		      {
		          System.out.println("Value at cell (" + row+ "," + col+")is: " + myTable.getCell(row,col));
		      }
		  }

		close().drag();
		
		// Fenêtre : ClassicsCD
		classicsJava(ANY,MAY_EXIT).close();
	}
}


Retour d'informations