2009-06-24 15 views
5

Estoy pensando en usar SQLite como un trozo de memoria para mi base de datos Oracle. Puedo dirigir fácilmente todos mis comandos DAL al SQLite, pero ahora me pregunto cómo debería completar fácilmente los datos para cada método de prueba.
¿Debería comenzar cada método creando las tablas necesarias e insertando las filas para la prueba específica? ¿Debería completar en la fase de configuración del dispositivo los datos en la memoria? ¿Hay alguna otra forma (como leerlo de algún archivo, pero descartar los cambios para que la próxima lectura sea la misma)?
¿Tal vez debería unir la base de datos con un stub normal y devolver los objetos creados localmente cuando sea necesario (DataSets y DataTables)? Pensé en probar esto, pero de esta manera no probaré las consultas actuales, y estoy tratando de probar los métodos de prueba que realizan selecciones de SQL. Quiero probar la sintaxis y la validez de las consultas también.Poblar SQLite en la memoria para pruebas de unidades

¿Alguna de las mejores prácticas al respecto? ¿O simplemente buenas ideas?

Respuesta

2

¿Qué tal si solo copias de seguridad de SQLite-Db-File?

Lo bueno de SQLite es que solo puede copiar todo el archivo db tantas veces como desee. También puede tener archivos SQL para completar algunos archivos db con datos. No entiendo tu problema por completo, pero con una mezcla de archivos db (como plantillas) y (opcionalmente) algunos archivos SQL para llenar tablas, según sea necesario, deberían ser suficientes para problemas de prueba muy difíciles.

Los archivos SQL también se pueden crear fácilmente volcando archivos simples y (opcionalmente) eliminando entradas no deseadas o agregando otras adicionales.

+0

Entonces, ¿cree que debería conservar un archivo que contenga mis datos de inicio, y para cada prueba, cópielo y ábralo con sqlite? Me temo que hará que las pruebas sean ilegibles, ya que no será obvio por qué una determinada consulta devuelve 1 fila u otro valor específico. El lector debería verificar con el archivo de entrada todo el tiempo. ¿No es eso un problema? –

+0

Hola, Noam, por supuesto, todo depende del entorno de prueba que tengas y de cuáles sean exactamente tus necesidades. Almacenar un archivo db completo puede ayudar a configurar un entorno de prueba complejo sin la necesidad de implementarlo todo en el código. Cuando desee que sea más legible, también puede crear el archivo db desde archivos dump a toda hora. Los archivos de volcado son más legibles. Cuando desee tener * todo * en el código, entonces es así - terminará todo en el código. – Juergen

Cuestiones relacionadas