In questi giorni quasi tutte le applicazioni ha diversi punti di integrazione come base di dati, gateway, il pagamento, o qualche servizio Web che consuma su HTTP.
Tutte le comunicazioni con i sistemi remoti avviene attraverso la rete ed entrambe le reti e questi sistemi vanno spesso traballante.
Se non provare il comportamento del nostro sistema quando il sito remoto opera fuori specifica e va in tilt l'unico posto per il test diventa in produzione, che è, come tutti sappiamo, per alcuni sistemi è inferiore accettabile.
Poiché le chiamate ai sistemi remoti utilizzano rete, la connessione socket può avere diversi scenari di errore, per esempio:
- La fine remota ripristina il collegamento con l'invio di un pacchetto TCP RST
- La connessione può essere stabilita, ma la risposta non è mai mandato indietro e la connessione non è chiuso (se non si utilizza timeout presa in vostra applicazione potrebbe essere in difficoltà ad un certo punto).
- La fine remoto può inviare i dati spazzatura come la risposta
- Il servizio può inviare HTML su HTTP invece della risposta attesa JSON
- Il servizio HTTP può inviare un byte di dati di risposta ogni 30 secondi
- Il servizio HTTP remoto invia solo le intestazioni e nessun corpo
- Il servizio può inviare megabyte di dati invece di kilobyte attesi
- Etc.
Sarebbe bello per essere in grado di testare il comportamento della nostra applicazione, quando alcune di queste condizioni accada.
Cynic cerca di aiutare in questo test. Fondamentalmente si tratta di un test harness (test doppio) che può essere utilizzato per simulare sistemi remoti astuti e subdoli direttamente dal tuo riga di comando.
Cynic cercherà a causare lesioni al sistema.
E 'obiettivo è quello di rendere il sistema in prova cinica.
Leggere i documenti formattati in http://cynic.readthedocs.org
Installazione
& Nbsp; [sudo] PIP installare cinico
O la versione bordo sanguinamento dal ramo git master:
& Nbsp; [sudo] PIP installare git+https://github.com/rspivak/cynic.git#egg=cynic
Requirements:
- Python
I commenti non trovato