Manipuler un champ Select2 avec Behat
Si vous développez en PHP, vous devez très certainement connaître Behat, le framework permettant de faire du développement piloté par le comportement (BDD, Behaviour Driven Development en anglais). Personnellement, je suis toujours embêté lorsque je me retrouve à écrire des scénarios devant manipuler une interface qui utilise le composant Select2 car il n’est pas possible de manipuler ce champ au travers de l’extension Mink.
Pour cela, il est nécessaire de créer des contextes personnalisés qui ajouteront des actions permettant de manipuler la liste déroulante. Etant donnée que je n’ai rien trouvé sur le Web, je vous partage le code qui permet d’interagir avec un champ Select2 dans un scénarii Behat.
Avec ma société, nous avons également décidé de publier une extension Behat installable via Composer contenant un contexte permettant la manipulation complète d’un champ Select2. Cette dernière est disponible sur Github.