Katalon – Objet de test paramétré

En paramétrant les objets de test, vous pouvez Utilisation Soit Local ou Mondial variables à Mise à jour dynamique les localisateurs d’objets de test. Dans les situations suivantes, cette fonctionnalité est utile :
- Vous souhaitez effectuer une action en bloc sur une collection de composants associés sans définir plusieurs objets de test, comme cocher de nombreuses cases.
- Cependant, comme il existe plusieurs objets associés, vous ne pouvez pas spécifier à l’avance celui que vous souhaitez utiliser comme localisateur dans les scripts de test.
Conditions préalables:
Vous êtes censé écrire le code dans la vue Script. Vous devez également avoir une compréhension de base de Java et de Groovy.
Objet statique :
La manipulation d’objets statiques est relativement simple. Sélectionnez simplement Nouvel objet de test dans le référentiel d’objets et entrez votre sélecteur préféré.
Objet dynamique :
Il peut être un peu plus délicat de travailler avec des objets dynamiques qu’avec des objets statiques, mais ce n’est pas aussi complexe qu’il n’y paraît. Bien qu’il existe une méthode Katalon pour gérer les objets paramétrés, je souhaite discuter des stratégies supplémentaires qui pourraient être utilisées.
Les objets dynamiques sont ceux dont les propriétés varient d’une certaine manière en fonction de règles métier établies. Pour gérer les objets dynamiques, Katalon Studio propose des propriétés d’objet de test de paramétrage. L’utilisation de cette fonctionnalité est illustrée dans l’exemple ci-dessous.
Nous construisons le « $id » variable pour la valeur de la propriété id. Les objets de test peuvent être paramétrés à l’aide d’un Variété des techniques de sélection.
- CSS
Passage à la vue de script
Une fois la propriété déclarée, vous pouvez passer à la vue de script et modifier la valeur apparente de la propriété. Les utilisateurs souhaitent généralement faire référence à des fichiers de données ou transmettre la valeur de la propriété en tant que variable.
Ce qui suit Syntaxe générale peut être utilisé pour trouver un objet de test à l’aide d’une propriété dynamique :
findTestObject('{your test object}', [('{property}') : '{value of property}'])
Par exemple:
Une propriété dynamique :
findTestObject('Page_Login/txtUserName', ['id' : '48415648'])
Deux propriétés dynamiques :
findTestObject('Page_Login/txtUserName', ['id' : '48415648', [('name') : 'controler14585']])
Prenons un exemple de XPath
Notre objectif est de convertir nos variables globales en variables dynamiques à l’aide de testObject paramétré
findTestObject('Page_Login/txtUserName', ['id' : '48415648', [('name') : 'controler14585']])
Le code ci-dessus peut être converti dans Objet de test paramétré comme:
//span[@data-component-type=${component}]/div/div[${index}]//h2//span
Définir votre objet de test
import com.kms.katalon.core.testobject.ConditionType import com.kms.katalon.core.testobject.TestObject import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI import mypackage.MySelectors String dynamicId = 'Katalon123' String xpath = String.format(MySelectors.dynamicIdPath, dynamicId) TestObject to = new TestObject("objectName") to.addProperty("xpath", ConditionType.EQUALS, xpath) WebUI.click(to)
Créer un mot-clé distinct pour les sélecteurs dynamiques
package mypackage public class MySelectors { public static final String dynamicIdPath="//div[@id="%s"]" }
Créer une méthode qui renvoie un objet de test dynamique
package mypackage import com.kms.katalon.core.testobject.ConditionType import com.kms.katalon.core.testobject.TestObject public class MySelectors { public static final String dynamicIdPath="//div[@id="%s"]" public static TestObject getMyTestObject(String selectorType, String selectorValue) { TestObject to = new TestObject() to.addProperty(selectorType, ConditionType.EQUALS, selectorValue) return to } }
Notre cas de test ressemblera à ceci :
import com.kms.katalon.core.testobject.ConditionType import com.kms.katalon.core.testobject.TestObject import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI import mypackage.MySelectors String dynamicId = 'Katalon123' String xpath = String.format(MySelectors.dynamicIdPath, dynamicId) WebUI.click(MySelectors.getMyTestObject("xpath", xpath))
Nous pouvons appeler notre nouvelle méthode directement en utilisant les mots-clés standard de Katalon car elle renvoie le TestObject.
Conclusion: Félicitations, vous savez maintenant comment Paramétrer les objets de test Web ; bref sur Statique et Dynamique objets. Nous savons maintenant aussi comment convertir nos objets statiques en objets dynamiques et Exécutez notre script à l’aide de ces objets.
Bon codage !
Source link