Définir des actions personnalisées dans Selenium
-
03-07-2019 - |
Question
J'ai un scénario de test Selenium qui entre des dates dans un sélecteur de dates composé de trois menus déroulants (année, mois et jour).
select validity_Y label=2008
select validity_M label=08
select validity_D label=08
Cette partie se répète souvent tout au long du scénario de test. J'aimerais le réduire en définissant mon action personnalisée "selectValidity", afin que ma redondance soit réduite, comme par exemple
.selectValidity 2008,08,08
Quel est le meilleur moyen (le plus simple et le plus propre) d'ajouter des macros ou des sous-routines à un scénario de test?
La solution
Je suppose que vous codez vos tests dans Selenese . Si tel est le cas, avez-vous envisagé d'utiliser l'un des pilotes client dans une des nombreuses langues? Ils ont java , . net , perl , ruby ??, javascript , php , et python . Chacun d'entre eux ont des sous-programmes. Soi-disant, l’ IDE peut traduire vos tests Selenese existants dans la plupart d'entre eux.
Autres conseils
Vous pourrez peut-être définir vos fonctions d'assistance JS dans un fichier JS et l'inclure en tant qu'extension principale ou dans le fichier user-extensions.js (comme c'est le cas pour Eléments UI ). Une fonction JS appelée selectValidity pourrait alors utiliser DOM pour sélectionner les valeurs.