2012-12-12 14 views
10

Esiste un pacchetto open source che implementa un endpoint "falso Amazon EC2"? In particolare, uno che può essere utilizzato per testare i clienti che parlano con EC2 (in particolare, usando boto)?Punto finale EC2 falso per il test

So che ci sono diverse soluzioni cloud open source che implementano l'API EC2 (ad esempio, OpenStack, Eucalyptus, CloudStack), ma sto cercando qualcosa in cui posso rapidamente far apparire un server EC2 falso e configurarlo con risposte predefinite a scopo di test.

+1

Questo non è specifico per EC2, e quindi non è * esattamente * una risposta, ma in Ruby, risolverei questo utilizzando [webmock] (https://github.com/bblimke/webmock) - uno strumento che intercetta le richieste HTTP fatte dalla tua applicazione, consentendo alla tua suite di test di restituire risposte arbitrarie. Python ha [HTTPretty] (http://falcao.it/HTTPretty/) che sembra funzionare in modo simile. – willglynn

+0

@willglynn Sono davvero alla ricerca di un'app di prova indipendente anziché eseguire il patch delle scimmie all'interno della mia app. Inoltre, speravo di poter sfruttare la re-implementazione di qualcun altro dell'API EC2, piuttosto che dover iniziare con le specifiche. –

+0

Con webmock/HTTPretty, non è necessario eseguire il patch delle scimmie: per quanto riguarda la tua app, stai parlando con l'endpoint remoto. Tutti gli hackery avvengono all'interno della libreria upstream, basta specificare quali richieste dovrebbero ricevere le risposte. Ruby ha anche [VCR] (http://www.rubyinside.com/vcr-a-recorder-for-all-your-tests-http-interactions-4169.html), che rende facile registrare e riprodurre le interazioni con API remote nella tua suite di test. – willglynn

risposta

7

Puoi controllare moto. Fondamentalmente prende in giro Boto stesso usando HTTPretty per deridere il livello HTTP. È ben fatto e sembra davvero utile.

1

Eucalyptus ha gestito un cloud di comunità per molti anni che è disponibile gratuitamente al http://www.eucalyptus.com/eucalyptus-cloud/community-cloud - non funzionerà se si vuole prendere in giro diverse risposte API EC2 (e una cosa da notare è che l'API di Eucalyptus non funziona t seguire completamente l'EC2 API, in particolare nel modo in cui impostano campi diversi) - prendere in giro le tue chiamate a Boto sembra la soluzione migliore se vuoi veramente testare con le risposte EC2 reali

Problemi correlati