Test unitari per PL / SQL [chiuso]
-
02-07-2019 - |
Domanda
Chiunque abbia esperienza o strumenti per test unitari PL / SQL. Lo strumento più bello che ho visto per questo sembra essere Quests Code Tester, ma non sono sicuro di quanto bene sarebbe l'integrazione con strumenti di integrazione continua o test della riga di comando?
Soluzione
Uso utPLSQL come framework e OUnit come client. utPLSQL non è pensato per essere usato da solo, è necessario un buon client grafico. OUnit è il predecessore di Qute. Qute è anche un buon strumento ma più complesso delle mie esigenze: ti permette di costruire test usando una GUI e fa cose buone come la generazione di codice di test.
Modifica: la mia comprensione è che utPLSQL archivia tutti i risultati in tabelle di database, inclusi tutti i risultati storici che costituirebbero una buona fonte di dati per la raccolta di statistiche per l'integrazione continua. Puoi anche definire gruppi di test in modo che una singola chiamata a utPLSQL possa chiamare più pacchetti di test.
Altri suggerimenti
Controlla utPLSQL . Ho trovato un po 'difficile iniziare, ma penso che faccia il lavoro abbastanza bene.
Per quanto riguarda gli strumenti di integrazione continua, ho usato per creare i soliti test (NUnit, C #) che hanno appena chiamato le stored procedure create con utPLSQL e verificato il loro risultato.
Ho creato e usando PL / Framework di test delle unità SQL che utilizza la libreria Ruby ruby-plsql .
Fornisce test molto più brevi e più leggibili di utPLSQL e offre una maggiore flessibilità rispetto agli strumenti della GUI (come Quest Code Tester o SQLDeveloper 2.1).
Ce ne sono alcuni elencati su Wikipedia: http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks#PL.2FSQL
L'ultima versione di Developer SQL include un'unità Suite di test molto interessante.
Ho trovato questo interessante post sulla continua integrazione per progetti PL / SQL.
Si occupa in sostanza del test unitario del codice PL / SQL, usando il framework utPLSQL precedentemente elencato ...
Sto usando python py.test
con cx_oracle
per creare script di test per pacchetti pl / sql. Funziona bene finora.
Recentemente ho usato con successo il framework di unit test di PL / SQL Commons toolkit (vedi anche slide dell'autore ). Il toolkit non è ancora disponibile pubblicamente (al momento della stesura) ma se mandi un'email agli autori riceverai un pacchetto funzionante (o almeno ce l'ho).