2009-07-10 4 views
2

Ich muss einige gespeicherte T-SQL-Prozeduren, die wichtige Geschäftslogik enthalten, verstehen und klarstellen. Kennt jemand irgendwelche Werkzeuge, Tipps, Tricks oder Hinweise, die für Komponententests verwendet werden können, so kann ich diese SQL umgestalten, ohne sie zu brechen?Was ist der beste Weg, Datenbankprozeduren zu refaktorieren?

Antwort

2

Simon Harriyott schlägt vor, TSqlUnit dafür zu verwenden. Es gibt mehr Informationen über seinen Prozess on his blog.

1

Warum müssen Sie refactor?

Fügen Sie eine Reihe von PRINT-Anweisungen hinzu und führen Sie sie manuell aus dem Management Studio aus. Wenn Sie die richtigen Informationen drucken, sollten Sie in der Lage sein, den Code zu verfolgen und zu verstehen, was vor sich geht.

Wenn Sie nicht wissen, welche Parameter zu verwenden sind, ändern Sie sie, um die Eingabeparameter an eine Protokolldatei zu senden, und verwenden Sie diese dann, um sie manuell auszuführen.

+0

Warum nicht den Debugger verwenden? –

+0

@John MacIntyre, welcher Debugger? –

+0

@ KM - Wenn Sie SQL2005 oder höher verwenden, wird VS installiert, von dem Sie debuggen können. Wenn Sie SQL2000 verwenden, ist in Query Analyzer ein Debugger integriert. –

2

Wenn Sie Zugriff auf Visual Studio Team System Database Edition haben, dann wird es mit einer Reihe von Unit-Test-Tools speziell für Datenbanken, wie in diesem MSDN article erläutert.

2

Hilfe zu mir Refactoring (im Gegensatz zu bekommen es im Test gegenüber, so Sie refector können), nicht vergessen Refactoring Databases zu überprüfen (entweder das Buch oder die Website).

Ich habe Tests für gespeicherte Prozeduren mit dem aufrufenden Code geschrieben (in meinem Fall Java mit dbunit), aber ich weiß nicht, wie es mit anderen Methoden verglichen werden würde.

Verwandte Themen