Penpot

Plateforme de conception et de prototypage open source

Corrigé des bugs avant sa sortie officielle et testé en continu par QAwerk

Penpot est une plateforme de conception et de prototypage open source qui facilite la collaboration entre designers et développeurs. Accessible via navigateur, multijoueur et collaborative, l’application propose des composants réutilisables, une mise en page flexible, la gestion des polices, le prototypage interactif, des outils de développement comme l’inspecteur de code et de propriétés, et bien plus encore.

Tous les clients

Tests d’applications Web

Nous avons aidé Penpot à peaufiner son application web avant son lancement officiel, afin que les utilisateurs puissent profiter pleinement de toutes ses fonctionnalités sans aucune interruption ni obstacle. Nous avons testé les fonctionnalités existantes et nouvelles, nous assurant ainsi qu’elles ne nuisent en rien à la valeur du produit.

En savoir plus

Tests automatisés

Nous avons aidé Penpot à identifier les domaines propices à l’automatisation des tests et avons mis en œuvre cette solution de A à Z. Nous avons automatisé un nombre important de tests de régression, ce qui a permis à Penpot de détecter des bogues critiques avant le déploiement et la mise à disposition de la version aux utilisateurs.

En savoir plus

Défi

Penpot a fait appel à QAwerk pour s’assurer de pouvoir lancer son produit auprès du grand public dans les délais impartis. L’entreprise souhaitait que son équipe interne se concentre pleinement sur le développement de fonctionnalités à valeur ajoutée et l’amélioration du produit, plutôt que sur la correction des bugs et leur détection.

Voici un bref aperçu des éléments que nous devions livrer :

  • Élaboration d’une stratégie et d’un plan de test. Avant de collaborer avec QAwerk, l’équipe Penpot signalait les bugs grâce à ses membres internes et à sa large communauté d’utilisateurs de la version bêta. Face à la popularité croissante de Penpot et à sa volonté de sortir de la phase bêta, cette approche n’était plus viable. C’est pourquoi nous avons été chargés de planifier l’ensemble des tests et de mettre en place des processus d’assurance qualité adaptés, afin de garantir des tests professionnels continus.
  • Passer de la version bêta à la version officielle. Pour Penpot, il était primordial d’éliminer les bugs et d’améliorer les performances avant de commercialiser le produit auprès du grand public. Notre mission consistait à examiner méthodiquement toutes les fonctionnalités existantes et à identifier un maximum de problèmes afin de garantir l’absence de bugs critiques dans la version de production et le fonctionnement fluide de l’application, sans ralentissements ni problèmes de sauvegarde des données.
  • Amélioration des nouvelles fonctionnalités. La version finale incluait des fonctionnalités phares très attendues, telles que des interfaces flexibles, l’accès au code directement depuis l’espace de travail et des améliorations d’accessibilité. Notre mission consistait à garantir une intégration fluide de ces mises à jour, sans interruption de service, et à susciter un véritable enthousiasme chez les utilisateurs de Penpot.

Par ailleurs, nous souhaitions aider Penpot à obtenir une meilleure couverture et à publier des mises à jour en toute sérénité. Nous leur avons donc proposé d’automatiser leurs tests manuels.

Solution

Lors de nos premiers tests, nous avons rencontré de nombreuses erreurs internes au serveur, qui apparaissaient de manière aléatoire, sans que l’on puisse en identifier la cause. Ces bugs nécessitaient une correction immédiate, car les utilisateurs qui les rencontraient risquaient de perdre leur travail.

Nous enregistrions donc des vidéos pour reproduire précisément ce type de bug, afin d’identifier un schéma commun à ces occurrences et de déterminer quelles actions utilisateur pouvaient déclencher les erreurs, ainsi que les zones de l’application les plus vulnérables. Nous partagions ensuite nos conclusions avec les développeurs de Penpot, qui ont finalement réussi à éradiquer complètement ce problème.

Nos tests ont inclus plusieurs types de tests, tels que :

  • Tests fonctionnels. Nous avons vérifié le bon déroulement de l’authentification des utilisateurs. Nous avons testé en profondeur les modules de profil utilisateur, de tableau de bord et d’espace de travail. Nous nous sommes assurés que toutes les modifications apportées à la conception étaient appliquées instantanément, notamment lors de l’édition collaborative.
  • Tests de régression. L’équipe Penpot déploie régulièrement de nouvelles fonctionnalités et des mises à jour des fonctionnalités existantes, ce qui nécessite des tests de régression réguliers. Nous combinons tests de régression manuels et automatisés afin d’obtenir une couverture optimale et des résultats cohérents.
  • Tests d’interface utilisateur. L’esthétique de l’interface est primordiale pour toute application moderne, et plus particulièrement pour un outil de conception comme Penpot, utilisé par les professionnels de l’UI/UX et du développement produit dans les grandes entreprises. Nous avons vérifié le positionnement et l’alignement des éléments sur chaque interface et nous nous sommes assurés de la cohérence des modèles d’interface dans toute l’application.
  • Tests de compatibilité. Nos ingénieurs QA ont testé Penpot sur trois navigateurs majeurs : Firefox, Chrome et Safari. Nous avons testé Penpot sur plusieurs versions de Safari, car certains bugs n’apparaissaient que dans les versions plus anciennes. Nous avons également utilisé trois systèmes d’exploitation différents : Windows, macOS et Linux, afin de garantir que tous les utilisateurs puissent profiter de Penpot quel que soit leur appareil.

ure all users can benefit from Penpot regardless of their devices.

En ce qui concerne l’automatisation des tests, nous nous sommes principalement concentrés sur les cas de tests de régression.

Automatisation des tests

L’automatisation des tests a été réalisée à l’aide du framework Playwright. Conçu pour simplifier l’automatisation multiplateforme et multi-navigateurs, Playwright répond parfaitement à nos besoins.

Lors de la sélection des cas de test à automatiser, nous avons suivi deux règles : les cas de test doivent avoir un impact important et leur préparation ne doit pas être trop chronophage. De cette façon, on obtient un retour sur investissement positif.

Par exemple, nous n’avons pas automatisé les cas d’inscription ou de réinitialisation de mot de passe, car cela implique l’utilisation d’API tierces comme Gmail, et l’automatisation de ce processus ne justifie pas les efforts déployés. De même, nous n’avons pas automatisé les cas de glisser-déposer ou de copier-coller, car Playwright ne les gère pas toujours correctement et les tests peuvent s’avérer instables.

Nous avons automatisé des cas de test tels que la connexion, la création et la suppression de fichiers, l’ouverture et le renommage de fichiers, la création et la suppression de tableaux, l’ajout d’un flou aux tableaux, la modification de la couleur d’arrière-plan, et bien d’autres. Ils sont disponibles dans le dépôt public de Penpot.

Nous avons également utilisé les comparaisons visuelles de Playwright pour les tests d’instantanés. Afin de minimiser le nombre de tests échoués suite à des modifications de l’interface utilisateur, nous avons utilisé des captures d’écran ne montrant qu’un seul élément ou une seule section, comme une forme créée. Ainsi, l’ajout de nouvelles sections au panneau de conception n’affectait pas la stabilité des tests.

Environ 10 % de nos tests nécessitent la capture de l’écran entier, par exemple pour vérifier non seulement les calques mais aussi la barre d’outils. Dans ce cas, nous utilisons le masquage pour ignorer les éléments à contenu dynamique, comme les horodatages ou les noms d’utilisateur. Bien qu’il soit impossible d’éliminer complètement les faux positifs, la mise à jour de ces tests est simple et rapide.

Découvrez comment nous avons procédé

Bugs détectés

La plupart des bugs que nous avons signalés étaient liés à des modifications non appliquées lors de l’édition collaborative d’un fichier, à des éléments qui se chevauchent, à du texte qui déborde et à des erreurs internes du serveur.
Nous avons également détecté un problème de compatibilité majeur : l’application était indisponible pour les utilisateurs ouvrant Penpot dans des versions de Safari antérieures à la version 16. Bien que ces versions particulières ne soient pas courantes parmi les utilisateurs de Penpot, le problème a été résolu le jour même.

Résultat réel: La forme copiée et collée n’est pas visible sur le plateau.

Résultat attendu: La forme copiée et collée est visible.

Résultat réel: une erreur interne s’affiche ; le bug est toujours reproductible après le rechargement de la page.

Résultat attendu: L’utilisateur peut faire glisser les calques.

Résultat réel: lorsque l’on clique sur l’élément de menu « Dissocier » (clic droit) du groupe de typographies dans le panneau « Ressources », rien ne se passe ; le groupe reste intact.

Résultat attendu: Le groupe est supprimé ; la police est déplacée à la racine de la section « Typographies ».

Résultat

En confiant l’intégralité des tests à QAwerk, Penpot a pu préparer son produit de manière optimale pour sa sortie officielle et implémenter plusieurs fonctionnalités phares afin de ravir les utilisateurs dès le lancement. Grâce à notre aide, Penpot a détecté et corrigé des bugs critiques et bloquants avant qu’ils n’affectent un grand nombre d’utilisateurs. Notre collaboration a permis à Penpot de devenir une plateforme robuste et stable, offrant aux utilisateurs la possibilité de rester créatifs et concentrés sur leur travail, sans aucune distraction.

Nous avons jeté des bases solides pour les tests professionnels continus à venir et continuons de soutenir Penpot dans sa mission d’apporter des solutions open source innovantes et d’améliorer la collaboration entre les équipes interdomaines.

Récompensé

Prix ​​de l’innovation par le design de Fast Company Prix ​​de l’innovation par le design de Fast Company En savoir plus

Dans la presse

Lancée il y a un an, cette startup a enregistré des dizaines de milliers de téléchargements et 15 000 « étoiles » sur GitHub. Parmi ses 10 000 entreprises utilisatrices actives figurent Google, Microsoft, Red Hat, Tencent, ByteDance et Mozilla.

Éditeur de presse spécialisé dans les startups et les technologies

Le fait que Penpot soit open source n’est pas son seul atout. Il possède également quelques fonctionnalités exceptionnelles qui en font un outil idéal pour une collaboration fructueuse entre designers et développeurs.

Portail d’actualités pour les développeurs et concepteurs web
L’équipe QAwerk excelle dans le test de systèmes complexes, la réalisation de tests manuels fiables sur différents systèmes d’exploitation et navigateurs, et la couverture complète grâce à des tests automatisés de bout en bout. Elle fournit un travail de haute qualité tout en respectant des délais serrés.
star star star star star
Daniel Herrero García
Je recommanderais QAwerk pour de nombreuses raisons, mais deux d’entre elles me semblent particulièrement importantes : la rapidité et la fluidité de l’intégration, ce qui est absolument essentiel pour une équipe qui externalise une tâche aussi cruciale que l’assurance qualité. Mais aussi l’utilisation intelligente des différents canaux de communication, qui ont été utilisés de manière efficace, avec respect et dans un esprit vraiment réfléchi.
star star star star star
QAwerk est proactif et serviable. QAwerk a mené des tests manuels et automatisés complets, notamment des tests fonctionnels, de régression et d’utilisabilité, ainsi que des tests automatisés couvrant un large éventail de scénarios. Ils ont fourni des rapports de bogues détaillés avec des recommandations de priorisation et ont travaillé avec notre équipe pour les résoudre. Les principaux livrables comprennent des plans de test, des cas de test, des scripts de test automatisés et des mises à jour régulières sur l’état d’avancement.
star star star star star
Pablo Alba Chao

Vous souhaitez perfectionner votre produit avant son lancement officiel ?

Parlons-en !

Tools

TaigaTaiga
PlaywrightPlaywright
JavaScriptJavaScript
BrowserStackBrowserStack
250K+inscriptions
20K+étoiles GitHub
925+cas de test écrits
225+cas de test automatisés
90+bugs signalés
7dispositifs utilisés

Commentaires de l’équipe QAwerk

Aliaksei

Aliaksei
ingénieur en automatisation QA

La création de cas de test automatisés s’est parfois avérée complexe, compte tenu de la nature du produit : interactions complexes avec les objets et peu de localisateurs uniques lors de la création d’éléments dans l’espace de travail. Mais j’adore les défis, et j’ai appris à exploiter pleinement le potentiel de Playwright. J’ai également découvert quelques subtilités concernant les tests de snapshots. Collaborer avec l’équipe et la direction de Penpot a été un véritable plaisir : ils étaient très réactifs, attentifs au moindre bug et à l’écoute de nos suggestions.

Oleh

Oleh
Ingénieur QA

Je suis ravi d’avoir contribué à la sortie officielle de Penpot, un succès fruit d’un travail acharné de part et d’autre. Nous avons écrit de nombreux tests et découvert plusieurs bugs critiques, ce qui a considérablement amélioré la stabilité de l’application. Ce projet m’a permis d’acquérir de l’expérience avec l’utilisation de Linux dans VirtualBox et de tester un nouvel outil de suivi des bugs : Taiga.

Media
Media
Media

Impressionné ?

Engagez-nous

Autres études de cas

Keystone

Keystone

Norvège

A aidé le portail d’études n° 1 en Norvège à améliorer 8 de ses sites web riches en contenu, qui sont utilisés par 110 millions d’étudiants chaque année

Arctype

Arctype

États-Unis

Stabilité des applications et accélération des lancements de logiciels de 20 % grâce à des tests nocturnes et à l’automatisation

Evolv

Evolv

États-Unis

Nous avons augmenté de 50 % la vitesse des tests de régression de cette plateforme de croissance numérique et nous nous sommes assurés de son fonctionnement optimal 24h/24 et 7j/7