테이블 셀의 값 판별

Java™ 또는 HTML 테이블에 대해 작업할 때 테이블에 제공된 셀의 값을 추출할 수도 있습니다. 여러 가지 방법이 있지만 간단한 방법은 테이블을 직접 조회하는 것입니다.

예제에서는 Functional Test 오브젝트 모델을 활용하여 테이블에서 정보를 추출하는 사용자 정의 Java 코드를 작성하는 방법을 보여줍니다. 첫 번째 샘플에서는 getTestData 메소드를 사용하여 Functional Tester가 테이블의 모든 데이터가 들어 있는 TestDataTable 오브젝트를 리턴하도록 합니다. 이 데이터 테이블이 제공된 상태에서 getRowCountgetColumnCount 메소드는 테이블의 크기를 판별합니다. 마지막으로 이러한 숫자를 사용하여 코드는 각 셀을 순환하고 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();
	}
}


피드백