Image of an arrow

Automatisez vos tests d’interaction pour les principaux navigateurs web

Avatar

bchhun

Afin d’améliorer et d’accélérer les tests des sites et applications Web, les développeurs ont souvent recours à une classe d’outils appelés « navigateurs sans affichage » ou headless browsers, en anglais. Ces outils permettent de tester le comportement des navigateurs web de façon automatisée et ce, sans visualisation.

Parmi les plus populaires, citons PhantomJS, pour les tests sous Webkit, le moteur de rendu HTML de Safari et Chrome, et SlimerJS, pour tester Gecko, le moteur de Firefox.

Pour faciliter la création de scénarios de tests avec ces API JavaScript, nous pouvons utiliser CasperJS. En voici une rapide présentation par son créateur, le développeur français Nicolas Perriault :

Enfin (roulement de tambour!), depuis cet automne, le développement d’un nouvel outil s’intéressant cette fois à Trident, le moteur de rendu d’Internet Explorer, a démarré sur Github. Il est important de le souligner car plus de 50 % des ordinateurs de bureaux qui naviguent chaque jour sur le Web sont encore équipés d’une version d’Internet Explorer, de la version 6 (4,92 %) à la version 10 (17,5 %) inclusivement. TrifleJS est, en fait, une adaptation de PhantomJS pour l’environnement .NET sous Windows.

Qu’est-ce que cela signifie pour les développeurs web?

Nous disposons maintenant d’outils nous permettant de:

  • Créer des scripts de capture d’écran pour voir nos projets web à travers la lunette de chacun de ces trois moteurs de rendu;
  • Vérifier tous les liens d’un projet web et vérifier qu’il n’y a pas de pages générant des erreurs 30X/40X/50X (ex: 300,404,501);
  • Créer des tests d’intégration de formulaires complexes avec 10 000 étapes;
  • Créer une armée de robots pour ramasser toutes les images de chats sur Imgur. 🙂

Si le sujet vous intéresse, je vous invite à revisiter ce blogue après le nouvel an. D’ici là, j’espère trouver le temps de monter une petite démonstration qui fera l’objet d’un prochain billet.


Articles similaires

Image of an arrow

Le développement Android progresse constamment avec de nouvelles fonctionnalités pour faciliter la création d’applications. Construction d’interface utilisateur avec Jetpack Compose, injection de dépendances avec Hilt, extensions de développement de jeux, librairies de compatibilité emoji, et la liste continue. Les nouveaux projets n’ont aucun souci à prendre avantage de ces nouvelles fonctionnalités. Cependant, les projets anciens […]

En juin dernier, Savoir-faire Linux a participé à la 10ᵉ édition du DrupalCamp Montréal, qui a eu lieu à l’Université Concordia. Ce fût l’occasion de voir une bonne partie de la communauté de développeurs Drupal montréalaise, d’échanger avec les autres entreprises qui travaillent avec cette technologie et de faire l’état de l’évolution de Drupal de […]

Thumbnail image

Développement Web Bien démarrer avec le rendu côté serveur avec Angular Par Kévin Barralon Cette semaine, nous avons mis en ligne un tutoriel pour les développeurs qui utilisent le framework JavaScript Angular. Ce tutoriel a pour but de les aider à initialiser un projet Angular avec le rendu côté serveur pré-configuré. L’intérêt de la mise […]

Gestion du rendu côté serveur : Une nouveauté Angular imposant un défi Angular est un framework utilisant le langage de programmation TypeScript. La version 5 a été mise en ligne en novembre 2017, avec de nouvelles fonctionnalités et corrections de bugs. Cette dernière version est accompagnée de l’outil en ligne de commande Angular CLI, mais […]

Thumbnail image

Design Qu’est ce que design system ? Par Patrick Bracquart Depuis plusieurs années, la complexité des sites et applications nous ont poussé à repenser le design et les méthodologies tant les champs de compétences nécessaires se sont élargis (analyste web, designer UI/UX, designer d’interaction, développeur front-end, …). C’est dans ce contexte qu’est apparu le design […]