Blog

Selenium & Playwright accélérés GPU : pas besoin d'un GPU à 500 €/mois

Exécutez vos tests Selenium et Playwright avec accélération GPU (WebGL, Canvas, vidéo) sur un serveur à GPU intégré iGPU/APU. CI de tests navigateur rapide et fidèle, dès 14,99 €/mois, k3s/k8s.

Selenium & Playwright accélérés GPU : pas besoin d’un GPU à 500 €/mois

Faire tourner Selenium et Playwright en CI ne demande pas une carte graphique dédiée à plusieurs centaines d’euros. Mais faire tourner vos tests avec accélération GPU — pour que WebGL, Canvas et la vidéo se comportent comme chez vos utilisateurs — oui, ça change tout. Et un GPU intégré (iGPU / APU) suffit, dès 14,99 €/mois.

Le vrai problème : le rendu logiciel

Sans GPU, Chromium bascule en rendu logiciel (SwiftShader) : WebGL, Canvas et la vidéo deviennent lents, et parfois différents de la réalité. Vos tests passent… mais ne reflètent pas ce que voient vos utilisateurs. À l’inverse, louer un GPU dédié à 300-500 €/mois pour lancer des navigateurs headless, c’est gâcher.

ApprocheRendu WebGL/CanvasCoût
CPU seul (software)⚠️ lent, parfois faux💶 mais trompeur
GPU dédié (~300-500 €/mois)✅💸💸💸 surdimensionné
iGPU Linux GPU (dès 14,99 €/mois)✅ rendu matériel réel💶

Pourquoi le GPU change vos tests navigateur

L’iGPU/APU est exposé au système (/dev/dri). Vos navigateurs l’utilisent pour :

  • WebGL / WebGPU : vraies performances, vrais résultats visuels ;
  • Canvas 2D et compositing accélérés ;
  • lecture vidéo décodée matériellement.

Résultat : des suites E2E plus rapides et surtout plus fidèles au navigateur réel de l’utilisateur.

Chromium sur iGPU (ANGLE / Vulkan)

Activez l’accélération GPU de Chromium via ANGLE/Vulkan — en headless comme sous Xvfb. Exemple côté Playwright :

// playwright.config.ts
use: { launchOptions: { args: [
  '--use-gl=angle', '--use-angle=vulkan',
  '--enable-features=Vulkan', '--ignore-gpu-blocklist',
] } }

Et l’équivalent côté Selenium (Python) :

from selenium import webdriver
opts = webdriver.ChromeOptions()
for a in ('--use-gl=angle', '--use-angle=vulkan',
          '--enable-features=Vulkan', '--ignore-gpu-blocklist'):
    opts.add_argument(a)
driver = webdriver.Chrome(options=opts)

Vérifiez l’accélération sur chrome://gpu : les lignes WebGL / Vulkan doivent être « Hardware accelerated ».

En CI et à l’échelle

  • Conteneurisez vos workers Playwright / Selenium / Puppeteer ;
  • Parallélisez vos suites E2E sur plusieurs nœuds en k3s / Kubernetes ;
  • SSH root, IPv6 et LUKS inclus. Option cluster k3s +5 €/nœud.

FAQ

Dois-je utiliser Xvfb ? En headless moderne (--headless=new), souvent non. Xvfb reste utile pour un display complet (extensions, cas particuliers) — et l’iGPU accélère les deux.

Playwright et Selenium sont-ils tous les deux supportés ? Oui, ainsi que Puppeteer : ce sont les mêmes flags Chromium et le même GPU.

Et pour tester WebGL / WebGPU en CI ? C’est justement le cas idéal : l’iGPU fournit un vrai contexte GPU, bien plus représentatif que le rendu logiciel.

Conclusion

Pour des tests navigateur accélérés GPU, l’iGPU fait le travail — sans la facture d’un GPU dédié. Lancez votre serveur de CI dès 14,99 €/mois.