Je ne parviens pas à cliquer sur un objet / je ne parviens pas à définir un texte dans la boîte de connexion à l'aide de xpath
WebUI.setText(driver.findElement(By.xpath("//*[@id=\"edit-name\"]")), username) WebUI.setText(driver.findElement(By.xpath("//*[@id=\"edit-pass\"]")), password) WebUI.click(driver.findElement(By.xpath("//*[@id=\"user-login\"]/div/div/button")))
Le texte doit être entré dans les boîtes de connexion cliquez sur le bouton Go!
3 Réponses :
Veuillez essayer sans utiliser l'objet WebUI. Si vous pouvez partager l'intégralité du code avec le message d'erreur dans la console, ce serait génial.
L'objet WebUI fonctionne avec TestObject, pas avec WebElement de sélénium. Vous pouvez utiliser le mode manuel ou le mode script pour créer le script de test.
Quelle est la différence / la connexion entre TestObject et WebElement?
TestObject est l'objet dans Katalon et nous pouvons l'utiliser comme findTestObject. WebElement est de Selenium. Nous devons utiliser la commande sélénium pour cela.
Donc, c'est juste une différence formelle - Katalon utilise l'un et Selenium l'autre? Mais c'est la même chose, fondamentalement.
Tout d'abord, vous définissez des objets de test comme ceci:
import com.kms.katalon.core.testobject.ConditionType import com.kms.katalon.core.testobject.TestObject as TestObject
Et puis vous les utilisez dans votre script
WebUI.setText(editName, username) WebUI.setText(editPass, password) WebUI.click(userLogin)
Remarque: je suppose que le nom d'utilisateur et le mot de passe utilisé ici sont des noms de variables, sinon utilisez 'username' et 'password'.
Note 2: vous aurez besoin des importations suivantes en haut du script:
TestObject editName = new TestObject().addProperty('xpath', ConditionType.EQUALS, '//[@id=\"edit-name\"]') TestObject editPass = new TestObject().addProperty('xpath', ConditionType.EQUALS, '//[@id=\"edit-pass\"]') TestObject userLogin = new TestObject().addProperty('xpath', ConditionType.EQUALS, '//*[@id=\"user-login\"]/div/div/button')