Vous pouvez adapter l'API find() dynamique et utiliser la méthode dojoTreeExpand()
pour rechercher tous les objets dans un contrôle d'arborescence Dojo dans l'application en test.
Cet exemple montre comment utiliser la méthode dojoTreeExpand()
pour rechercher tous les objets dans une arborescence Dojo. Vous pouvez adapter le code
pour changer le navigateur si nécessaire.
public void testMain(Object[] args) {
// A FAIRE - Insérer le code ici
dojoTreeExpand();
}
public void dojoTreeExpand() {
//Prend dynamiquement l'application en test à l'aide de la méthode startBrowser et le navigateur Mozilla Firefox (en supposant que Firefox est correctement activé)
//Conseil : Vous changez le navigateur pour Internet Explorer dans la méthode startBrowser.
ProcessTestObject process = RationalTestScript.startBrowser(
"Mozilla Firefox", "http://docs.dojocampus.org/dijit/Tree" (http://docs.dojocampus.org/dijit/Tree));
// ProcessTestObject process =
// RationalTestScript.startBrowser("Internet Explorer",
// "http://docs.dojocampus.org/dijit/Tree" (http://docs.dojocampus.org/dijit/Tree));
// Attente du chargement complet du navigateur.
process.waitForExistence();
// L'objet RootTestObject représente une vue globale de l'application
// à tester. Il ne représente
// pas un objet TestObject réel dans le logiciel testé. Il
// fournit des moyens de rechercher un objet
// TestObject arbitraire sur la base de propriétés.
RootTestObject to = RootTestObject.getRootTestObject();
// Définir le tableau d'objets de test TestObject
TestObject[] dojoControls = null;
for (int i = 0; i <= 10; i++) {
// Réalisation d'une opération de recherche et sauvegarde de l'objet retourné dans le tableau
// TestObject.
dojoControls = to.find(RationalTestScript.atDescendant(".class",
"Html.A", ".className", "show"));
if (dojoControls.length >= 1) {
break;
}
RationalTestScript.sleep(3);
}
// Affectation du premier objet de test trouvé à l'objet GUITestObject et
// réalisation d'un clic
((GuiTestObject) dojoControls[0]).click();
// Attente d'un temps suffisant pour charger complètement la page.
sleep(30);
// Définition du tableau d'objets de test TestObject pour une structure d'arborescence Dojo
TestObject[] trees = null;
for (int i = 0; i <= 10; i++) {
// Réalisation d'une opération de recherche et sauvegarde de l'objet retourné dans le tableau
// TestObject.
trees = to.find(RationalTestScript.atDescendant(".dojoclass",
"tree", ".id", "treeOne"));
if (trees.length == 1) {
break;
}
RationalTestScript.sleep(3);
}
//
DojoTreeTestObject dijitTree = new DojoTreeTestObject(trees[0]);
// Réparti si une arborescence contient "Continents" lors de l'expansion du noeud
dijitTree.expand(atList(atText("Continents"), atText("North America"),
atText("Mexico")));
// Réparti si une arborescence contient "Continents" lors de l'expansion du noeud
dijitTree.click(atList(atText("Continents"), atText("North America"),
atText("Mexico"), atText("Guadalajara")));
sleep(10);
}
}