L'article explore les méthodes de test des messages différés dans Symfony Messenger en utilisant Behat. L'auteur décrit un projet où des opérations sont planifiées pour être traitées de manière asynchrone à l'avenir, parfois après quelques minutes, parfois après plusieurs heures. L'objectif est de se concentrer sur le résultat plutôt que sur la planification elle-même. L'article propose une solution pour "voyager" à travers le temps, traiter les travaux planifiés et vérifier les résultats attendus. Il utilise des scénarios Gherkin pour illustrer l'escalade de priorité des incidents en fonction du temps et explique comment configurer les entités, les messages et les transports dans Symfony pour gérer ces scénarios. Enfin, il montre comment créer un transport Messenger personnalisé pour contrôler quels travaux en arrière-plan sont traités et quand, en utilisant le composant Cache de Symfony pour persister temporairement les messages planifiés.
25564 shaares