[Python] pyunit e test con i database

Fabrizio Mancini mr.file a gmail.com
Mar 11 Nov 2008 17:26:37 CET


> Penso che dipenda anche da quello che vuoi fare con il database.
> Se ti serve per farci girare sopra delle applicazioni, web o no,
> effettivamente il doctest puo' essere scomodo.
>
> Se invece usi il database per immagazzinare dati, e.g. risultati di un
> esperimento di laboratorio, e sai che verra' interrogato solo tramite
> moduli come sqlalchemy, il doctest e' utile perche' ti permette di far
> capire cosa rappresenta ogni tabella, qual e' la maniera corretta per
> accedervi, e cosi' via.
>
> Era forse un po' troppo generica la domanda :)


Ciao,
i db in questione sono dei database che vengono usati da dei sistemi di
gestione documentale, in cui ogni schema ha circa 50-60 tabelle, e alcune
tabelle, quelle più grandi, arrivano a contenere fino a 200 milioni di righe
ed alcune query devono mettere in join 3 o 4 tabelle di questa dimensione.
Le tabelle che entrano in gioco comunque sono poche. Il problema che una o
due di queste tabelle variano per ogni schema. Non volendo modificare lo
script per ogni schema, ho messo tutta la configurazione "variabile" in un
file ini che il sw si legge allo startup.
Per accedere al db stavo anche pensando di provare sqlalchemy ma vorrei
prima capire come performa in tale situazione. Per adesso uso solo cx_Oracle
nudo e crudo e non ho problemi.
Quello che vorrei fare è testare la classe che si interfaccia con il db. Il
problema sorge quando la classe cerca di interrogare il db e si aspetta dei
risultati.
I mock mi servivano appunto per fornire un set di questi dati e su questi
eseguire alcune operazioni, come select e update.
In base ai risultati di questa query il sw che sto scrivendo recupera i file
interfacciandosi con vari sistemi di memorizzazione dati.
Fondamentalmente non fa nulla di complicato, ma devo lanciare il parallelo
vari processi per recuperare parrallelamente i vari documenti (e sono
tanti!!!) al fine di velocizzare l'operazione, perché alcuni di questi
sistemi sono tutt'altro che storage veloci!!!
Siccome inizialmente l'avevo scritto di corsa questo pezzettino di software,
lo vorrei riscrivere daccapo e con gli unittest.
Ciao e grazie
Fabrizio
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: http://lists.python.it/pipermail/python/attachments/20081111/ed4513d3/attachment.htm 


Maggiori informazioni sulla lista Python