Aller au contenu
Facteur
ENCommencer

Migration

Changez de fournisseur sans réécrire vos tests

Le coût réel d’un changement d’outil de test, ce n’est pas l’abonnement : c’est la journée passée à réécrire des assertions qui marchaient. Ici, trois lignes par fichier changent, et la forme du test reste la vôtre.

Avant, avec MailosaurTypeScript
// Le client Mailosaur, et le code cherché dans le corps.
const mailosaur = new MailosaurClient(
  process.env.MAILOSAUR_API_KEY,
);

const message = await mailosaur.messages.get(
  serverId,
  { sentTo: address },
);

expect(message.html.codes[0].value).toBe('265279');
Après, avec FacteurTypeScript
// Trois lignes changent. La forme du test, non.
import { Facteur } from '@facteur-eu/sdk';

const facteur = new Facteur({ apiKey: process.env.FACTEUR_API_KEY });

const message = await facteur.messages.waitFor({
  sentTo: address,
});

expect(message.otp).toBe('265279');

Ce qui pousse une équipe à changer

Le volume ne se compte plus par jour

Leurs plans incluent un volume d’emails par jour : une suite qui tourne fort le soir d’une release touche le plafond quotidien même quand le mois est calme. Ici, le volume est mensuel, et le dépassement s’achète en packs valables un an.

Le SMS entre dans le même outil

Chez eux, le SMS est un module facturé en supplément. Ici, le message texte arrive dans la même inbox et se lit avec le même appel que l’email.

Des quotas par inbox, avec leurs alertes

Un plafond par boîte et un seuil d’alerte : un test parti en boucle s’arrête sur son propre quota au lieu de consommer la capacité de toute l’organisation. C’est l’étape de la migration que l’ancien outil ne permettait pas.

Le code arrive déjà extrait

Notre bibliothèque rend le code à usage unique, les liens et les codes comme des champs du message : ce que vos tests cherchaient avec une expression régulière est déjà fait à la réception, donc l’assertion raccourcit.

Marche à suivre

Cinq étapes, aucune irréversible

Le premier test bascule en dix minutes, et il vous dit si toute la suite basculera.

  1. 1

    Créez un compte et une inbox

    Le plan gratuit suffit pour valider la migration. Notez l’identifiant d’inbox : il joue le rôle du « server ID ».

  2. 2

    Basculez un seul test

    Installez notre bibliothèque, remplacez le client et l’appel qui attend le message, puis lancez ce test : s’il passe, votre suite passera. C’est le moment de vérité et il coûte dix minutes.

  3. 3

    Faites tourner la suite complète en double

    Gardez l’ancien fournisseur en parallèle une semaine, le temps de comparer les taux de réussite. Nous ne vous demandons pas de résilier avant d’être convaincu.

  4. 4

    Posez vos quotas et vos alertes

    C’est l’étape que l’ancien outil ne permettait pas. Une limite par inbox, des seuils d’alerte, et le canal Slack de l’équipe.

  5. 5

    Reprenez les autres fichiers à votre rythme

    Fichier par fichier, du plus instable au plus calme. Rien n’oblige à finir dans la semaine : les deux outils cohabitent aussi longtemps que vous le voulez.

Correspondance

Table de conversion des points d’API

Où atterrit chacun de vos appels actuels, si vous appelez l’API directement plutôt que par une bibliothèque. Les lignes marquées « à venir » ne sont pas encore ouvertes : nous préférons vous le dire ici plutôt que vous le laisser découvrir en migrant.

Chez MailosaurChez FacteurNote
GET /api/serversGET /v1/inboxesUn « server » Mailosaur est une « inbox » chez nous. Le vocabulaire change, la sémantique non.
POST /api/messages/searchPOST /v1/messages/searchMêmes critères, même logique de correspondance ALL / ANY, avec l’attente bloquante en plus.
GET /api/messages/:idGET /v1/messages/:idStructure de réponse compatible, enrichie de otp, links, codes et extract.
GET /api/files/attachments/:idGET /v1/attachments/:idTéléchargement binaire identique.
GET /api/files/email/:idGET /v1/messages/:id/emlà venirExport .eml.
GET /api/analysis/deliverability/:idGET /v1/messages/:id/analysisà venirSPF, DKIM, DMARC et score anti-spam. Ni le point d’API ni le plan qui le portera ne sont arrêtés.
POST /api/devices/otpPOST /v1/authenticator/otpà venirGénération de code TOTP à partir d’un secret partagé.
GET /api/usage/limitsGET /v1/usageà venirEnrichi : ventilation par inbox, crédits restants et date d’expiration.

Ce qui n’a pas d’équivalent chez nous

Les aperçus de rendu dans plusieurs clients de messagerie, l’éditeur visuel et les règles automatiques n’ont pas d’équivalent ici, et n’en auront pas : ce n’est pas le même produit. Si votre suite en dépend, écrivez-nous à hello@facteur.eu : nous vous dirons honnêtement si la migration a du sens aujourd’hui ou pas.

Questions fréquentes

Faut-il réécrire les tests pour migrer ?

Pas de réécriture, mais trois lignes par fichier : l’import de notre bibliothèque, la construction du client, et l’appel qui attend le message. L’assertion, elle, raccourcit souvent, parce que le code à usage unique arrive déjà extrait dans un champ. La structure de vos tests ne bouge pas.

Que deviennent les messages déjà reçus chez Mailosaur ?

Ils restent chez eux. Ce sont des données de test : elles se régénèrent au prochain passage de votre suite, et c’est ce qui rend la migration légère : il n’y a rien à exporter, et pas de bascule DNS à planifier.

Facteur est-il plus avantageux que Mailosaur ?

Oui. Mailosaur impose des plafonds quotidiens stricts qui bloquent vos suites de tests lors des pics de livraison. Facteur propose un volume mensuel lissé avec des packs de dépassement valables 1 an, tout en incluant le test SMS et des inboxes illimitées dès le plan Team à un tarif nettement plus avantageux.

Pourquoi migrer de Mailosaur vers Facteur dès aujourd’hui ?

Parce que la bascule se mesure en fichiers, pas en semaines : trois lignes par test, et vous pouvez la tenter sur un seul avant de décider. Vous gagnez au passage la réception de SMS dans le même outil, un plafond de messages par inbox avec son alerte, et un hébergement en France.

Testez la migration sur un seul fichier

Le plan gratuit ne demande pas de carte bancaire. Un fichier, trois lignes, et vous saurez.