以下の例では、テーブルから情報を抽出するための Functional Test のオブジェクト・モデルを活用するカスタム Java コードの作成方法を示します。 サンプルでは、まず getTestData メソッドを使用して、Functional Tester がテーブル内のすべてのデータを含む TestDataTable オブジェクトを戻すようにします。 このデータ・テーブルが与えられると、GetRowCount および GetColumnCount メソッドはテーブルのサイズを判別します。 このコードは最後に、それらの数値を使用して、各セルを循環しながら getCell メソッドによりテーブル内の各セルの内容を判別します。セルの値は、コンソール・ウィンドウに表示されます。
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"); // Frame: ClassicsCD 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(); // 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)); // Query object to find out what kind of data it has. System.out.println (existingTable().getTestDataTypes()); //Declare variable for table. ITestDataTable myTable; myTable = (ITestDataTable)existingTable().getTestData("contents"); //Print out total rows & columns. System.out.println ("Total Rows: " + myTable.getRowCount()); System.out.println ("Total Cols: " + myTable.getColumnCount()); //Print out cell values. 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(); // Frame: ClassicsCD classicsJava(ANY,MAY_EXIT).close(); } }