Comme le suggère le titre, je fais une vérification standard d'un élément Web avant l'action réelle. Vérifiez comme si l'élément est affiché et activé. Je veux séparer les deux vérifications parce que je veux une raison spécifique pour laquelle il échoue. Je sens que le code ci-dessous est trop long.
Toute suggestion serait appréciée. P>
3 Réponses :
Votre meilleur plan d'action ici sera de les séparer dans leurs propres petites fonctions et de retourner Boolean.
Comme mais je suggérerai également d'appeler iselementdisplayed après que MOVEToElement est effectué car certains navigateurs considèrent différemment de moyens "affichés". P> Vous pouvez également utiliser Essayez de voir pour enregistrer les exceptions par fonction. P> P>
Merci @naven, avec votre commentaire, j'ai raccourcir mon code un peu!
Boolean isActionSuccess = false;
CommonFunctions.silentWait(1);
actionToE.moveToElement(currentObject).perform();
if (CommonFunctions.isElementDisplayed(currentObject)) {
if (CommonFunctions.isElementEnabled(currentObject)) {
if (!actionPar.isEmpty()) {
// do something
}
} else {
currentObject.sendKeys(Keys.ARROW_LEFT);
isActionSuccess = true;
}
}
}
En utilisant Sélénium pour exécuter le < a href = "https://stackoverflow.com/questions/54932415/what-can-developers-do-to-assist-in-automation-testing/54940260#54940260"> Tests automatisés vous don 't strong> besoin de toute sorte de vérification standard supplémentaire d'un élément Web avant l'action réelle em>. Pour l'enregistrement, chaque ligne de code supplémentaire induira des instructions supplémentaires et des cycles d'instructions. Au lieu de cela, vous devez Optimiser votre code / programme. Si votre usecase est d'invoquer < Code> Cliquez sur () CODE> ou Exemple: p> SENDOYES () CODE> Vous n'avez pas besoin d'appeler ISDisplayed () CODE> STROND> ou isenabled () code> strong> séparément pour vérifier. Au lieu de cela, vous devez attendre une période de temps prédéfinie (selon la spécification de test em>) en utilisant WebDriverwait Inconconcence avec
présenceOfelemated () Code> Strong> visibilitéOplocatedLocated () code> strong> est une attente de vérifier qu'un élément est présent sur le DOM d'une page et visible . La visibilité signifie que l'élément est non seulement affiché mais a également une hauteur et une largeur supérieures à 0. p>
ellementTobeclickable () code> stry> est une attente de contrôle d'un élément est visible et activé de telle sorte que vous puissiez cliquer dessus. p>
Salut @ Debanjanb, je comprends de l'endroit où vous venez, mais je crée mon propre cadre (mot-clé et daté de données combinés) et votre suggestion ne s'applique pas. Je veux juste une suggestion de raccourcir mon code qui effectuera la même action.
@ Luvs1015 Où puis que je suis d'accord avec votre propre cadre (mot-clé et datées de données combinés, ce que j'ai suggéré dans ma réponse sont les meilleures pratiques tout en conservant l'optimisation de code qui peut être utile aux futurs lecteurs.