La prueba de funciones se diseñó para ejecutarse en el servidor web de desarrollador de App Engine con fines de pruebas. Te permite cambiar el estado de los servicios, como almacén de datos, Blobstore, etc., para determinar si tu aplicación se comporta de forma correcta cuando se encuentra con los distintos estados posibles del servicio. Por ejemplo, si cambias el estado del servicio de almacén de datos a inhabilitado, puedes probar si tu app puede controlar la falta de disponibilidad del almacén de datos de forma estable.
Hay varias formas de usar la característica de prueba de capacidades:
Cambia el estado de las capacidades con la consola
Para cambiar las funciones en la consola, haz lo siguiente:
- Una vez que la app se ejecute en el servidor de desarrollador, visita la URL
/_ah/admin
en tu servidor para acceder a la consola, por ejemplo: http://localhost:8888/_ah/admin. - En la consola, haz clic en Capabilities Status, que se encuentra en la parte inferior izquierda.
- En la página Configuración del estado de las capacidades, localiza el servicio o los servicios que tu aplicación usa y los estados que deseas cambiar. Luego, haz clic en el menú desplegable al lado del nombre del servicio y selecciona el estado que quieres probar en ese servicio:
Los servicios reflejarán la configuración que elegiste la próxima vez que tu app acceda a ellos. Ejecútala y observa su comportamiento.
Cambia el estado de las capacidades con la línea de comandos
Si usas Eclipse, puedes establecer una o más capacidades con las opciones de depuración de la línea de comandos.
Para cambiar la configuración de las capacidades con los argumentos de la línea de comandos de VM en Eclipse, haz lo siguiente:
- Procura tener Eclipse abierto; luego, selecciona tu proyecto, haz clic derecho y selecciona Depurar como > Configuración de depuración.
- Dirígete a la pestaña Argumentos y, luego, ingresa la opción deseada en el cuadro de texto argumentos de VM. El formato de la opción es el siguiente:
-Dcapability.status.capabilityname.*=statusname
capabilityname
se reemplaza por el nombre del servicio (consulta Nombres de funciones [del servicio]), ystatusname
se reemplaza por el estado de la función que quieres usar (consulta Valores de estado de función).Nota: Para la función de escritura del almacén de datos, reemplaza
capabilityname
pordatastore_v3
, y el asterisco (*
) porwrite
, de la siguiente manera:Dcapability.status.datastore_v3.write
. Para otras funciones, deja el asterisco como se muestra.En la captura de pantalla a continuación, se muestran dos capacidades (imágenes y almacén de datos) inhabilitadas desde la línea de comandos:
- Haz clic en Aplicar para guardar los cambios
- Haz clic en Depurar para ejecutar tu app con esa configuración.
Nombres de capacidad (del servicio)
Nombre de capacidad en la API | Nombre de capacidad que se muestra en Console | Descripción |
---|---|---|
blobstore |
BLOBSTORE | El servicio de Blobstore |
datastore_v3 |
DATASTORE | El servicio de Datastore para consultas |
datastore_v3,write |
DATASTORE_WRITE | El servicio de Datastore para solicitudes de escrituras |
images |
IMAGES | El servicio de imágenes |
mail |
El servicio de correo electrónico | |
memcache |
MEMCACHE | El servicio de Memcache |
taskqueue |
TASKQUEUE | El servicio de lista de tareas en cola |
urlfetch |
URLFETCH | El servicio de urlfetch |
Valores de estado de capacidad
Valores de estado para todas las capacidades | Descripción |
---|---|
DISABLED |
La capacidad está inhabilitada. |
ENABLED |
La capacidad está disponible y no hay mantenimientos planeados. |
SCHEDULED_MAINTENANCE |
La capacidad está disponible, pero tiene un mantenimiento programado. |
UNKNOWN |
Se desconoce el estado de este servicio. |
Cambia el estado de las capacidades con la API de funciones
Para usar la característica de prueba de capacidades de servicio local en la API, debes usar la clase LocalCapabilitiesServiceTestConfig. Para obtener más información y un código de muestra, consulta Escribe pruebas de funciones de servicio local.