Ho sviluppato un SDK ( link ) per un'API RESTful in PHP e i miei test automatici ( esempio ) sono in realtà chiamate live contro l'API, il che è negativo per molteplici ragioni , principalmente:
- ci vuole molto tempo (circa 3 ore) per i test da completare
- è impossibile eseguire test simultanei perché interferiranno l'uno con l'altro
Voglio smettere di fare chiamate API live.
Ho un'idea:
- cortocircuitare la richiesta prima che venga attivata
- asserisci che l'URL della richiesta è corretto, in modo che, ad esempio, se passo il valore
John
al parametrofirst_name
, mi aspetto che l'URI della richiesta contengafirst_name=John
. Inoltre, devo essere cauto sui parametri opzionali.
Tuttavia, non penso che questo sia un sostituto completo perché perdo la robustezza della risposta.
Come faccio a sapere che la richiesta è, in effetti, valida senza effettuare una chiamata dal vivo e controllare il codice di risposta o la risposta JSON?
In questo momento la libreria utilizza una lib di HTTP casuale, ma nella prossima versione principale su cui sto lavorando in questo momento, passerò a Guzzle, che esegue il test di supporto e cortocircuitando la richiesta.
Infine, puoi vedere un esempio della risposta dell'API qui: link