Configurazione test del servizio per le funzionalità

La funzionalità di test delle funzionalità è progettata per essere eseguita sul server web di sviluppo di App Engine a scopo di test. Consente di modificare lo stato dei servizi, ad esempio datastore, blobstore e così via, per determinare se la tua applicazione funziona correttamente quando rileva i vari stati possibili del servizio. Ad esempio, se imposti lo stato del servizio datastore su Disattivato, puoi verificare se la tua app gestisce l'indisponibilità del datastore in modo regolare.

Esistono diversi modi per utilizzare la funzionalità di test delle funzionalità:

Modifica lo stato delle funzionalità utilizzando la console

Per modificare le funzionalità nella console,

  1. Con l'applicazione in esecuzione sul server di sviluppo, accedi alla console visitando l'URL /_ah/admin sul server, ad esempio: http://localhost:8888/_ah/admin.
  2. Nella console, fai clic su Stato delle funzionalità in basso a sinistra.
  3. Nella pagina Configurazione dello stato delle funzionalità, individua il servizio o i servizi utilizzati dalla tua app e il cui stato vuoi modificare. Fai clic sul menu a discesa accanto al nome del servizio e seleziona lo stato che vuoi testare per il servizio:

Ora i servizi riflettono le impostazioni che hai scelto la prossima volta che l'app vi accede. Esegui l'app e osservane il comportamento.

Modifica lo stato delle funzionalità tramite la riga di comando

Se usi Eclipse, puoi impostare una o più funzionalità utilizzando le opzioni della riga di comando di debug.

Modificare le impostazioni della funzionalità utilizzando gli argomenti della riga di comando della VM in Eclipse.

  1. Con Eclipse aperto, seleziona il tuo progetto, fai clic con il tasto destro del mouse e poi seleziona Debug come > Configurazioni di debug.
  2. Vai alla scheda Argomenti e inserisci l'opzione desiderata nella casella di testo Argomenti VM. Il formato dell'opzione è

    -Dcapability.status.capabilityname.*=statusname

    , dove capabilityname è sostituito dal nome del servizio (vedi Nomi funzionalità (servizio)), mentre statusname è sostituito dallo stato della funzionalità che vuoi utilizzare (vedi Valori stato funzionalità).

    Nota:per la funzionalità di scrittura del datastore, sostituisci capabilityname con datastore_v3 e l'asterisco (*) con write, in questo modo: Dcapability.status.datastore_v3.write. Per le altre funzionalità, lascia l'asterisco come mostrato.

    L'acquisizione di schermate riportata di seguito mostra la disattivazione di due funzionalità (datastore e immagini) dalla riga di comando:

  3. Fai clic su Applica per salvare le modifiche.
  4. Fai clic su Debug per eseguire l'app con queste impostazioni.

Nomi funzionalità (servizio)

Nome funzionalità nell'API Nome funzionalità visualizzato nella console Descrizione
blobstore NEGOZIO Il servizio blobstore
datastore_v3 DATASTORE Il servizio datastore per le query
datastore_v3,write DATASTORE_WRITE Il servizio datastore per le richieste di scrittura
images IMMAGINI Il servizio di immagini
mail MAIL Il servizio di posta
memcache MEMCACHE Il servizio memcache
taskqueue CODA ATTIVITÀ Il servizio coda di attività
urlfetch URLFETCH Il servizio urlfetch

Valori dello stato delle funzionalità

Valori di stato per tutte le funzionalità Descrizione
DISABLED La funzionalità è disabilitata.
ENABLED La funzionalità è disponibile e al momento non è pianificata alcuna manutenzione.
SCHEDULED_MAINTENANCE La funzionalità è disponibile, ma è stata pianificata la manutenzione.
UNKNOWN Lo stato di questo servizio è sconosciuto.

Modifica lo stato delle funzionalità utilizzando l'API Capabilities

Per utilizzare la funzionalità di test delle funzionalità del servizio locale nell'API, utilizza la classe LocalCapabilitiesServiceTestConfig. Per ulteriori informazioni e per un esempio di codice, consulta la sezione Scrittura di test delle funzionalità dei servizi locali.