Este exemplo mostra como utilizar o método getTestData
do Teste Funcional
para acessar os valores nas células de um controle de grade. O exemplo
é testado no aplicativo Classics Java:
import resources.GetGridDataExampleHelper;
import com.rational.test.ft.*;
import com.rational.test.ft.object.interfaces.*;
import com.rational.test.ft.script.*;
import com.rational.test.ft.value.*;
import com.rational.test.ft.vp.*;
/**
* Description : Teste Funcional Script
* @author administrator
*/
public class GetGridDataExample extends GetGridDataExampleHelper
{
/**
* Script Name : <b>GetTreeDataExample</b>
* Generated : <b>Dec 14, 2002 6:24:48 AM</b>
* Modified : <b>Dec 14, 2002 6:24:48 AM</b>
* Description : Teste Funcional Script
* Original Host : WinNT Version 5.0 Build 2195 (Service Pack 3)
*
* @since 2002/12/14
* @author administrator
*/
public void testMain (Object[] args)
{
// Desativar o Visualizador de Log neste exemplo
setOption (IOptionName.BRING_UP_LOGVIEWER, false);
// Iniciar o Aplicativo Classics Java
startApp("ClassicsJavaA");
// Navegar para a Grade de Pedidos Existente
jmbMenuBar().waitForExistence();
jmbMenuBar().click(atPath("Order"));
jmbMenuBar().click(atPath("Order->View Existing Order Status..."));
// Quadro: Visualizar Status do Pedido
nameComboBComboBox().click();
nameComboBComboBox().click(atText("Claire Stratus"));
okstatuslogon2Button().click();
// Aguardar a criação da tabela
existingTableTable().waitForExistence();
// Obter os dados para a tabela
ITestDataTable orderTable;
orderTable
(ITestDataTable)existingTableTable().getTestData("contents");
// Exibir os tipos de dados disponíveis para a grade, total de linhas e
// colunas.
System.out.println ("Available Data Types: " +
existingTableTable().getTestDataTypes())
System.out.println ("Total Rows in table : " +
orderTable.getRowCount());
System.out.println ("Total Cols in table : " +
orderTable.getColumnCount());
// Percorrer todas as linhas
for (int row=0; row < orderTable.getRowCount();++row)
{
// Percorrer todas as colunas
for (int col=0; col < orderTable.getColumnCount();++col)
{
// Imprimir valores de células nas coordenadas (row,col)
System.out.println ("Row " + row + ", " +
orderTable.getColumnHeader(col) + ": "
+orderTable.getCell(row,col) );
}
}
// Fechar o quadro
closeorderButton().click();
// Encerrar o Aplicativo Classics Java
ClassicsJavaFrame(ANY,MAY_EXIT).close();
}
}
Esse exemplo navega para a tela "Visualizar Pedidos Existentes" do aplicativo. O código nessa amostra extrai os valores de todas as células da grade e os exibe na janela de console.
A primeira etapa para extrair os dados é utilizar o método getTestData
para extrair os dados do controle. Isso é feito com a seguinte
sintaxe:
ITestDataTable orderTable;
orderTable = (ITestDataTable)existingTableTable().
getTestData("contents");
Com esse conjunto de dados, é possível determinar o número total de linhas e
colunas utilizando os métodos getRowCount
e getColumnCount
. Também
é possível perguntar ao controle quais tipos de dados estão disponíveis na
tabela utilizando os getTestDataTypes
. O código a seguir
envia os resultados dessas consultas para a janela de console.
System.out.println ("Available Data Types: " +
existingTableTable().getTestDataTypes());
System.out.println ("Total Rows in table : " +
orderTable.getRowCount());
System.out.println ("Total Cols in table : " +
orderTable.getColumnCount());		
A próxima etapa é imprimir os valores das células individuais, que é feito utilizando um loop for para percorrer as linhas e colunas da grade:
for (int row=0; row < orderTable.getRowCount();++row)
{
// Percorrer todas as colunas
for (int col=0; col < orderTable.getColumnCount();++col)
{
// Imprimir valores de células nas coordenadas (row,col)
System.out.println ("Row " + row + ", " +
orderTable.getColumnHeader(col) + ": " +
orderTable.getCell(row,col) );
}
}
O script de exemplo utiliza o método getCell
para imprimir o valor da célula atual. Observe também que o
método getColumnHeader
imprime o cabeçalho da coluna atual.
Ao trabalhar com uma grade, a numeração para linhas e colunas inicia
em 0. Isso não se aplica aos métodos getRowCount
e getColumnCount
onde a numeração inicia em 1.
Termos de uso | Feedback
(C) Copyright IBM Corporation 2002, 2004. Todos os Direitos Reservados.