La función de prueba de capacidades está diseñada para ejecutarse en el servidor web de desarrollo de App Engine con fines de prueba. Te permite cambiar el estado de los servicios, como el almacén de datos o el almacén de blobs, para determinar si tu aplicación se comporta correctamente 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 aplicación gestiona la falta de disponibilidad del almacén de datos de forma correcta.
Hay varias formas de usar la función de prueba de funciones:
Cambiar el estado de las funciones mediante la consola
Para cambiar las funciones en la consola, sigue estos pasos:
- Con la aplicación ejecutándose en el servidor de desarrollo, accede a la consola visitando la URL
/_ah/admin
en tu servidor. Por ejemplo: http://localhost:8888/_ah/admin. - En la consola, haz clic en Estado de las funciones en la parte inferior izquierda.
- En la página Configuración del estado de las funciones, busque el servicio o los servicios que usa su aplicación y cuyo estado quiera cambiar. Haga clic en el menú desplegable situado junto al nombre del servicio y seleccione el estado que quiera probar en ese servicio:
Los servicios reflejarán los ajustes que hayas elegido la próxima vez que tu aplicación acceda a ellos. Ejecuta tu aplicación y observa su comportamiento.
Cambiar el estado de las funciones mediante la línea de comandos
Si usas Eclipse, puedes definir una o varias funciones mediante las opciones de la línea de comandos de depuración.
Para cambiar los ajustes de las funciones mediante los argumentos de la línea de comandos de la VM en Eclipse
- Con Eclipse abierto, selecciona tu proyecto, haz clic con el botón derecho y, a continuación, selecciona Depurar como > Configuraciones de depuración.
- Ve a la pestaña Arguments (Argumentos) e introduce la opción que quieras en el cuadro de texto VM arguments (Argumentos de VM). El formato de la opción es
-Dcapability.status.capabilityname.*=statusname
capabilityname
se sustituye por el nombre del servicio (consulta Nombres de las funciones (servicios)) ystatusname
se sustituye por el estado de la función que quieras usar (consulta Valores del estado de las funciones).Nota: Para la función de escritura del almacén de datos, sustituye
capabilityname
pordatastore_v3
y el asterisco (*
) porwrite
, de esta forma:Dcapability.status.datastore_v3.write
. En el resto de las funciones, deja el asterisco tal como se muestra.En la captura de pantalla que se muestra a continuación, se ven dos funciones (almacén de datos e imágenes) que se han inhabilitado desde la línea de comandos:
- Haz clic en Aplicar para guardar los cambios.
- Haz clic en Depurar para ejecutar la aplicación con esos ajustes.
Nombres de las funciones (servicios)
Nombre de la función en la API | Nombre de la función que se muestra en la consola | Descripción |
---|---|---|
blobstore |
BLOBSTORE | El servicio de almacén de blobs |
datastore_v3 |
DATASTORE | El servicio de almacén de datos para consultas |
datastore_v3,write |
DATASTORE_WRITE | El servicio de almacén de datos para solicitudes de escritura |
images |
IMÁGENES | El servicio de imágenes |
mail |
El servicio de correo | |
memcache |
MEMCACHE | El servicio Memcache |
taskqueue |
TASKQUEUE | El servicio de colas de tareas |
urlfetch |
URLFETCH | El servicio urlfetch |
Valores de estado de las funciones
Valores de estado de todas las funciones | Descripción |
---|---|
DISABLED |
La capacidad está inhabilitada. |
ENABLED |
La capacidad está disponible y no hay actividades de mantenimiento programadas en estos momentos. |
SCHEDULED_MAINTENANCE |
La capacidad está disponible, pero tiene programadas actividades de mantenimiento. |
UNKNOWN |
Se desconoce el estado de este servicio. |
Cambiar el estado de las funciones con la API Capabilities
Para usar la función de prueba de las funciones del servicio local en la API, debes usar la clase LocalCapabilitiesServiceTestConfig. Para obtener más información y un ejemplo de código, consulta Escribir pruebas de funciones de servicios locales.