So che esistono metodi per automatizzare i "test unitari" di SQL Server. Ma la mia domanda è leggermente diversa.Test dell'unità automatizzata SQL Server
Durante la convalida dei requisiti scriviamo una serie di script SQL che sostanzialmente non restituiscono nulla in caso di successo.
Quindi, in pratica il suo come
- Esegui query
- Esegui un'altra query
- Esegui pacchetto SSIS
- Esegui query.
E esempio con un po 'più di contesto
Requisito # 1 Descrizione: Mostra Quindi il mio problema
- query per verificare se la tabella di destinazione esiste ed è vuoto
- query per verificare se la sorgente esiste e contiene i dati
- Esegui pacchetto SSL ETL
- Query Verificare che i dati siano stati trasferiti correttamente
- Query di far valere le regole di business
Abbiamo trovato un modo per automatizzare questo processo scrivendo un programma personalizzato per analizzare attraverso l'esecuzione di query SQL, caricare i dati necessari, pacchetti SSIS correre, ecc e poi riferire se abbiamo un risultato (che mostra un fallimento del test).
Questa sembra una ruota che reinventa ... ma non sono riuscito a trovare nulla di simile. Soprattutto quello che si integra con SSIS.
EDIT:
Qualcuno ha suggerito SSISunit, e c'è poco da alcuna documentazione su di esso. Se dovessimo usare l'unità SSIS è più simile al processo di installazione asserire che le condizioni richieste esistono, passaggi 1 & 2 sopra? Ho sempre pensato che i processi di configurazione non fossero validi?
Immagino che cosa stessimo cercando di realizzare ci sia un insieme limitato di compiti, volevamo un modo per essere in grado di eseguire solo "script" relativi a un requisito. Nel tuo caso avremmo un pacchetto SSIS per requisito? Contro un sistema che analizza l'input e asserisce che i test sono passati. Ha senso? – Nix
Oh sì, capisco cosa intendi. hmmm ... – Sam
Suppongo che potresti scrivere del codice personalizzato per passare attraverso una tabella di passi ed eseguire il comando sql o il pacchetto ssis memorizzato in essi utilizzando DTEXEC e SQLCMD. – Sam