Extraindo Dados de um Controle ComboBox/List (JComboBox)

Este tópico descreve como utilizar o método getTestData do Teste Funcional para acessar os valores na lista de um controle ComboBox/List. O exemplo a seguir é testado no aplicativo Classics Java:

import resources.GetListDataExampleHelper;

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 GetListDataExample extends GetListDataExampleHelper
{
/**
* Script Name : <b>GetListDataExample</b>
* Generated : <b>Dec 31, 2002 1:15:35 PM</b>
* Modified : <b>Dec 31, 2002 1:15:35 PM</b>
* Description : Teste Funcional Script
* Original Host : WinNT Version 5.0 Build 2195 (Service Pack 2)
*
* @since 2002/12/31
* @author Administrator
*/
public void testMain (Object[] args)
{
startApp("ClassicsJavaA");

// Quadro: ClassicsCD
tree2Tree().click(atPath("Composers->Schubert->Location(PLUS_MINUS)"));
tree2Tree().click(atPath("Composers->Schubert->Die schone Mullerin, Op. 25"));
placeOrderButton2Button().click();

//Declarar variáveis para lista
ITestDataList nameList;
ITestDataElementList nameListElements;
ITestDataElement nameListElement;

// Quadro: Logon do Membro
nameComboComboBox().waitForExistence();

// Tipos de dados de teste disponíveis: {selected=Selected List Element, list=List Elements}
java.util.Hashtable ht = nameComboComboBox().getTestDataTypes();
System.out.println(ht);

// Obter todos os elementos
nameList = (ITestDataList)nameComboComboBox().getTestData("list");

nameListElements = nameList.getElements();

int listElemCount = nameList.getElementCount();

for (int i = 0; i < listElemCount; i++)
{
nameListElement = nameListElements.getElement(i);
System.out.println(nameListElement.getElement());

// Clicar em cada elemento
nameComboComboBox().click();
nameComboComboBox().click(atText(nameListElement.getElement().toString()));
};

cancelorderlogonButton().click();

// Quadro: ClassicsCD
ClassicsJavaFrame(ANY,MAY_EXIT).close();
}
}

Esse exemplo abre primeiro o aplicativo Classics Java. Ele seleciona um compositor na árvore e um álbum (compositor = Schubert, álbum = "Die Schone Muellerin") e clica no botão "Fazer Pedido". Na tela seguinte (Login do Membro - diálogo), o código de amostra extrai a lista de valores da ComboBox e os exibe na janela de console antes de clicar em cada elemento da lista.

A primeira etapa é extrair os dados do controle utilizando o método getTestData:

ITestDataList nameList;
nameList =(ITestDataList)nameComboComboBox().getTestData("list");

Para descobrir quais tipos de dados estão disponíveis para um controle, utilize o seguinte código: .

java.util.Hashtable ht = nameComboComboBox().getTestDataTypes();

Este conjunto de dados permite criar uma matriz que contém todos os elementos da lista. Isso é feito da seguinte forma:

ITestDataElementList nameListElements;
nameListElements = nameList.getElements();

Com os elementos da lista em mãos, você pode criar um loop que acessa cada elemento da lista. Para determinar o número de elementos da lista, utilize o método getElementCount. Para extrair o valor do elemento da lista, utiliza-se o método getElement. No exemplo, isso é feito com o seguinte código:

int listElemCount = nameList.getElementCount();

for (int i = 0; i < listElemCount; i++)
{
nameListElement = nameListElements.getElement(i);
System.out.println(nameListElement.getElement());
};

Termos de uso | Feedback
(C) Copyright IBM Corporation 2002, 2004. Todos os Direitos Reservados.