J'en suis au point où je dois écrire des tests unitaires pour une API REST écrite avec CakePHP 1.3. L'API prend en charge les requêtes GET, POST et PUT pour l'interrogation et la manipulation des données.
Existe-t-il un moyen établi de tester l'entrée/sortie correcte d'une API en simulant une requête HTTP, à l'aide de fixtures ? Je ne veux pas exécuter de requêtes POST/PUT réelles sur la base de données en direct (dev). Comment puis-je simuler au mieux le système pour utiliser des modèles temporaires, tout en testant le reste de la pile telle quelle ?
Tester les requêtes GET est assez facile avec tests de contrôle . Toutefois, pour la manipulation des données, l'API utilise assez largement les en-têtes HTTP et analyse également les données POST/PUT brutes XML et JSON. Les méthodes de test unitaire du contrôleur ne simulent que les données POST en définissant le paramètre $this->data
dans le contrôleur, ce qui ne me permet pas de tester correctement l'API.