Aller au contenu

Un agent de codage peut tester l’inscription de votre application Android comme le ferait une personne : la compiler, l’exécuter dans l’Android Emulator, remplir le formulaire avec une adresse de test Proxy Mail QA, puis saisir le code ou ouvrir le lien de l’e-mail. Proxy Mail QA fournit à l’agent l’adresse et le code ou le lien de l’e-mail ; l’agent pilote l’émulateur avec ses propres outils, généralement adb.

Chaque configuration ci-dessous commence avec Proxy Mail QA connecté à l’agent : collez la configuration en un seul prompt, ou connectez le MCP server à la main.

Tout agent capable d’exécuter des commandes shell peut piloter l’émulateur via adb, issu des platform tools du SDK Android. Démarrez un émulateur depuis le Device Manager de Android Studio (ou emulator -avd avec son nom), ouvrez votre projet dans l’agent avec Proxy Mail QA connecté, et demandez :

Compile l’application de debug, installe-la sur l’émulateur en cours d’exécution et ouvre-la. Inscris-toi avec une nouvelle adresse de test Proxy Mail QA, en utilisant le mot de passe qu’elle te donne, puis saisis le code de vérification de l’e-mail et vérifie que l’application affiche le compte comme vérifié. Fais une capture d’écran à chaque étape.

L’agent, en général :

  1. Compile et installe avec ./gradlew installDebug, et ouvre l’application avec adb shell am start.
  2. Appelle create_address avec password: true.
  3. Trouve les champs à partir de adb shell uiautomator dump (ou d’une capture d’écran de adb exec-out screencap -p), les touche avec adb shell input tap et tape avec adb shell input text.
  4. Envoie le formulaire, puis appelle wait_for_code ou wait_for_link.
  5. Tape le code, ou ouvre le lien dans l’application avec adb shell am start -a android.intent.action.VIEW -d et le lien, pour que votre App Link ou votre schéma personnalisé le prenne en charge.
  6. Fait une capture d’écran et vérifie que l’écran affiche le compte comme vérifié.

adb shell input text exige que les espaces soient écrits %s et que certains caractères soient échappés : demandez donc à l’agent de vérifier chaque champ après la saisie, surtout les mots de passe.

Le mode agent de Android Studio peut utiliser des serveurs MCP distants (guide de Google). Dans Settings → Tools → AI → MCP Servers, sélectionnez Enable MCP Servers et ajoutez :

mcp.json
{
"mcpServers": {
"proxymail-qa": {
"httpUrl": "https://api.proxymail.qa/mcp"
}
}
}

Choisissez Start Login pour vous connecter via votre navigateur. Android Studio ne prend pas en charge les modèles de prompt MCP : formulez donc votre demande en mots simples plutôt que de choisir un prompt comme test_signup_flow. Nous n’avons pas encore testé nous-mêmes l’agent de Android Studio ; si sa connexion n’aboutit pas, utilisez plutôt Claude Code ou Codex avec Android Studio.

  • Un serveur de développement sur votre ordinateur. L’émulateur joint votre ordinateur à l’adresse 10.0.2.2 : les liens vers 10.0.2.2:3000 d’un build de développement sont donc normaux. Demandez à l’agent de le marquer comme environnement de développement (mark_dev_host), et check_email valide ces liens au lieu de les signaler en échec.
  • App Links. Une fois le lien arrivé, check_email avec expect_host défini sur votre domaine App Link vérifie que le lien y mène, et count_emails détecte un second e-mail envoyé par erreur. Si le lien ouvre Chrome au lieu de l’application, la cause habituelle est le assetlinks.json du domaine ou le filtre d’intent de l’application.
  • Un code réparti en plusieurs cases. L’agent touche la première case et tape le code entier, puis vérifie que chaque chiffre est bien placé avant de continuer.
  • Un formulaire d’inscription plus long. Pour un nom d’utilisateur soumis à des règles, une date de naissance ou un pays, form_values fournit une valeur pour chaque champ à partir d’une nouvelle adresse créée pour l’occasion.
  • Le même compte la prochaine fois. Demandez à l’agent d’enregistrer où le compte est utilisé (environment, comme staging, et des tags comme android) lors de sa création, afin que list_addresses le retrouve. Avec une clé d’API autorisée à lire les mots de passe enregistrés, get_sign_in renvoie le compte et son mot de passe en un seul appel.
  • Un rapport. L’agent appelle start_run au début et finish_run à la fin, qui renvoie le rapport en Markdown.
  • Le coupon. Après l’inscription à une offre dans l’application, wait_for_code avec kind: coupon renvoie le coupon avec sa remise, sa date de fin et le délai de réception. L’agent le saisit dans le champ promo de l’application.
  • Le paiement, uniquement avec des paiements de test. Utilisez les testeurs de licence et les cartes de test de Google Play, ou le mode test de l’application, jamais une vraie carte ni un vrai achat. L’agent enregistre ce qu’a fait l’application avec record_coupon_result.
  • Un coupon sous forme de lien qui ouvre l’application, comme myapp://redeem?code=… : wait_for_link avec app: true le renvoie, et l’agent l’ouvre avec adb shell am start -a android.intent.action.VIEW -d et le lien.
  • Une offre par personne. S’inscrire à nouveau avec une variante de la même adresse (get_address_variants), puis check_offers, montre si l’application a accordé l’offre deux fois.
  • Noms et mots de passe délicats. get_name_variants et get_password_variants fournissent des valeurs pour les autres champs du formulaire (apostrophes, accents, autres écritures, chaque classe de symboles, les limites du champ) ; l’agent saisit chacune et indique ce qu’a fait l’application.
  • Consentement et désabonnement. L’agent enregistre ce qu’il a choisi à l’inscription avec record_consent, se désabonne depuis les paramètres de l’application ou le lien de l’e-mail, appelle mark_unsubscribed, puis check_unsubscribe liste les e-mails marketing reçus ensuite.

Pour conserver la vérification sous forme de test UI exécuté dans CI, voir Android (Espresso), ou Maestro pour un parcours qui couvre aussi iOS.

Une question sur cette page ?

Posez votre question dans la langue de votre choix. La documentation peut y répondre tout de suite, ou vous pouvez l'envoyer à l'équipe Proxy Mail QA, qui répond en anglais.

Interroger la documentation