5

Estoy siguiendo the recommendations on the app engine site for unit testing coding with GAE. Establecí la probabilidad PseudoRandomHRConsistencyPolicy en 0% para forzar al código a tener en cuenta los casos donde los datos aún no son consistentes. El problema es que en mi suite de pruebas quiero hacer algunos ajustes de datos (crear y agregar datos al almacén de datos) y necesito una forma de forzar al almacén de datos a eliminar todos los datos en un estado consistente antes de que ejercite el código bajo prueba. (es decir, asegúrese de que el almacén de datos devolverá todas las entidades globales que he escrito la próxima vez que haga una consulta).Flushing python GAE almacén de datos cuando la unidad de prueba

¿Hay alguna manera de hacer esto y, de no ser así, cómo otras personas configuran datos en sus suites de pruebas cuando usan los modelos de consistencia?

+0

acaba de poner 1 de probabilidad para probar cualquier operación de escritura es lo suficientemente bueno. – Khoi

Respuesta

5

La clave para hacerlo se observa cerca del final de la sección sobre las pruebas de desarrollo de recursos humanos:

en el entorno local, la realización de un get() de una entidad que pertenece a un grupo de entidades con un no aplicado write siempre hará que los resultados de la escritura no aplicada sean visibles para posteriores consultas globales . En producción, este no es el caso.

Simplemente agregue algunas operaciones de obtención a sus pruebas para obtener los registros apropiados, y se mostrarán en futuras consultas.

+0

¿Puede ser más específico sobre las mejores prácticas para hacer esto? Soy nuevo en el HRD, así que, aunque creo que entiendo lo que está diciendo, quiero asegurarme de que sea correcto y completamente válido. – Allen

+0

@ Allen Simplemente haga un 'db.get (a_key)' en cada entidad que haya almacenado en la rutina de configuración antes de ejecutar la prueba propiamente dicha. –

+0

Eso funcionó muy bien. Desearía que hubiera una manera de decirle que simplemente aclare todo lo que sabe. Gracias por la ayuda. – Allen

Cuestiones relacionadas