Use Cases

Tests de formulaires et UAT avec l'extension CaptchaAI

Périmètre sûr : Ce guide s'applique exclusivement à vos propres applications, environnements de QA, de préproduction ou de production, ou à des systèmes pour lesquels vous disposez d'une autorisation écrite. Il ne décrit ni l'automatisation de sites tiers, ni le contournement de protections, ni l'évasion d'anti-bot.

L'extension CaptchaAI reste stable dans vos campagnes UAT à une condition : la traiter comme un workflow de navigateur reproductible, pas comme un bouton que l'on active à la main. La résolution qui passe en cinq minutes dans un notebook casse à la première exécution sans surveillance. Ce qui décide de la stabilité, c'est l'état du compte, le profil de navigateur et le comportement après résolution.

Scénario concret : préproduction d'un éditeur SaaS

Une équipe QA francophone héberge sa préproduction sur OVHcloud ou Scaleway ; un job planifié rejoue chaque nuit le parcours d'inscription protégé par reCAPTCHA v3. Le premier run passe en cinq minutes, puis doit tenir malgré les déploiements et une latence irrégulière depuis la région eu-west-3 (Paris). L'objectif : des suites déterministes qui restent en CI même quand la famille CAPTCHA de la page change.

Architecture d'un pipeline reproductible

L'orchestrateur déclenche les étapes du parcours ; CaptchaAI n'intervient que sur celles où un défi apparaît, les autres restent des appels HTTP standards. Le point le plus souvent négligé est la continuité de session : une session incohérente est la première cause de rejet après résolution.

  • Le même profil de navigateur.
  • Le même client HTTP et le même jar de cookies.
  • Résolution et soumission du formulaire dans une seule session.

Ce que CaptchaAI prend en charge dans ce workflow

Une seule API couvre les familles utiles en UAT :

  • reCAPTCHA v2 et v3, Cloudflare Turnstile et Cloudflare Challenge, GeeTest v3, image/OCR, grille et BLS.
  • CaptchaFox (bêta), Friendly Captcha (bêta) et Lemin (bêta).
  • hCaptcha et FunCaptcha (Arkose Labs) ne sont pas pris en charge ; GeeTest v4 est annoncé comme à venir.

La facturation repose sur les threads (défis simultanés), pas sur le nombre de résolutions : le plan BASIC ($15/mois, 5 threads) suffit à démarrer une suite UAT au coût prévisible.

Exemple de code

Exemple côté client de votre propre suite de tests :

import fetch from 'node-fetch';

const API_KEY = process.env.CAPTCHAAI_KEY;

export async function createTurnstileTask(siteKey, pageUrl) {
  const res = await fetch('https://api.captchaai.com/createTask', {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({
      clientKey: API_KEY,
      task: {
        type: 'TurnstileTaskProxyless',
        websiteURL: pageUrl,
        websiteKey: siteKey,
      },
    }),
  });
  const data = await res.json();
  return data.taskId;
}

La clé est lue depuis une variable d'environnement, jamais écrite en clair. Vous transposez ce contrat vers résoudre reCAPTCHA v2 via l'API sans changer la structure du test.

Observabilité et journalisation

Instrumentez chaque appel CAPTCHA pour obtenir des signaux exploitables :

  • la durée d'obtention du token, le code retour HTTP et l'identifiant de tâche ;
  • l'écart entre résolution réussie et parcours réussi, deux métriques distinctes ;
  • côté RGPD, les données personnelles à minimiser dans vos formulaires de test.

Dépannage

Symptôme Cause probable Correctif
ERROR_WRONG_USER_KEY Clé copiée avec un espace parasite. Recopiez la clé et stockez-la comme secret CI.
ERROR_ZERO_BALANCE Solde sous le minimum par tâche. Rechargez et ajoutez une alerte de solde.
Token refusé après résolution Session différente de celle du défi. Gardez résolution et envoi dans le même contexte.

Liste de contrôle avant la mise en production

  • Le périmètre est limité à vos propres applications ou à des sources autorisées.
  • La clé CaptchaAI est stockée dans un secret CI ou un coffre, jamais dans le code.
  • Une stratégie de retry idempotent (backoff exponentiel borné) gère les erreurs transitoires.
  • Le token est appliqué dans la même session que celle du défi.

FAQ

L'extension fonctionne-t-elle en mode headless dans un pipeline CI ?

Oui, à condition de charger l'extension dans un profil de navigateur dédié et persistant. Pour une suite entièrement automatisée, beaucoup d'équipes pilotent plutôt l'API directement. Voir intégrer la résolution de CAPTCHA dans votre CI.

Comment rendre vos tests reproductibles d'une exécution à l'autre ?

Isolez un profil de navigateur par suite, capturez les paramètres d'entrée sur le HTML réel, et appliquez le token dans la session d'origine. Ces trois règles éliminent la plupart des tests instables.

Ce guide couvre-t-il l'automatisation de sites tiers ?

Non. Tous les exemples portent sur vos propres applications ou des environnements autorisés. Pour une source externe, validez d'abord les conditions d'utilisation et la base juridique. Voir la résolution de CAPTCHA en environnement de test autorisé.

Quelles précautions RGPD pour les journaux de test ?

Utilisez des jeux de données fictifs et documentez votre durée de rétention.

Guides connexes

Améliorez la qualité de vos workflows CAPTCHA avec une approche méthodique et reproductible. – Obtenez votre clé CaptchaAI.

Les commentaires sont désactivés pour cet article.