MSDN Magazin > Home > Ausgaben > 2008 > Oktober >  Toolbox: Realistische Testdaten, Dare Obasanjos...
Toolbox
Realistische Testdaten, Dare Obasanjos Blog, Tools zur Farbcodierung und mehr
Scott Mitchell

Alle Preise wurden am 21. August 2008 bestätigt, Änderungen vorbehalten. Die in diesem Artikel ausgedrückten Meinungen sind ausschließlich die des Autors und spiegeln nicht zwangsläufig die Meinungen von Microsoft wider.


Erstellen von Datenbank-Testdaten
Beim Erstellen und Testen einer datengesteuerten Anwendung ist es wichtig, dass die Daten in der Entwicklungsdatenbank genau den Daten entsprechen, die in der Produktion verwendet werden. Ähnliche Mengen und Typen von Daten während Entwicklung und Produktion helfen den Designern beim Evaluieren von Benutzeroberflächen, den Entwicklern bei der Beurteilung der Skalierbarkeit des Systems und den Testern beim Erstellen von Testfällen, die auf realistischeren Szenarios basieren. Außerdem ist es hilfreich, realistische Daten für Demos und Vertriebspräsentationen zur Verfügung zu haben.
Sie können Ihre eigenen SQL-Skripts schreiben, um Testdaten zu generieren. Eine viel einfachere und schnellere Vorgehensweise besteht darin, SQL Data Generator (Version 1.1) von Red Gate Software zu verwenden. Mit ein wenig Zeigen und Klicken mit der Maus kann SQL Data Generator Millionen von Datensätzen mit realistischen Werten generieren, und das Anpassen der generierten Daten ist ein Kinderspiel.
Um die ersten Schritte durchzuführen, starten Sie SQL Data Generator, und erstellen Sie ein neues Projekt. Daraufhin wird der Assistent zur Projektkonfiguration angezeigt. An dieser Stelle wählen Sie den Server und die Datenbank aus, geben an, ob vor oder nach dem Generieren der Daten ein benutzerdefiniertes SQL-Skript ausgeführt werden soll und wählen eine Reihe von Optionen aus, z. B. ob INSERT- und DELETE-Trigger ausgelöst und CHECK-Einschränkungen durchgesetzt werden sollen.
Nachdem die Datenbank und die Optionen ausgewählt wurden, zeigt SQL Data Generator eine Oberfläche mit drei Fensterbereichen an. Im linken Fensterbereich sind die Tabellen in der Datenbank aufgeführt. Dort können Sie auswählen, für welche Tabellen Daten generiert werden sollen. Wenn im linken Fensterbereich eine Tabelle ausgewählt wird, werden Informationen zu dieser Tabelle in die beiden rechten Fensterbereiche geladen. Im rechten oberen Fensterbereich werden die Datengenerierungseinstellungen für die Tabelle zusammengefasst. Hier können Sie auswählen, wie viele Zeilen hinzugefügt werden sollen, ob die Daten der Tabelle vor dem Hinzufügen der generierten Daten gelöscht werden sollen und welche Aktionen unternommen werden, wenn versucht wird, ungültige Daten einzufügen. Im rechten unteren Fensterbereich wird eine Vorschau der Daten angezeigt, die generiert werden.
Um die Daten für eine bestimmte Tabellenspalte anzupassen, wählen Sie diese Spalte im linken oder rechten unteren Fensterbereich aus. Dadurch werden die Einstellungen der Spalte in den rechten oberen Fensterbereich geladen. Hier können Sie angeben, ob die generierten Werte für diese Spalte eindeutig sein sollen und welcher Prozentsatz der Werte NULL sein soll. Sie können auch angeben, wie die Daten generiert werden, um sicherzustellen, dass sie realistische Werte statt lediglich zufälliger Zeichenfolgen, Zahlen und Daten enthalten. Sie können Daten aus einer .csv-Datei, einer SQL-Abfrage, einer gewichteten Liste möglicher Werte oder aus einem regulären Ausdruck verwenden.
Alternativ können Sie eine Kategorie wählen, z. B. Farben, E-Mail-Adressen, Vornamen, Nachnamen, Adressen, Städte, Postleitzahlen, Kreditkartennummern, Unternehmensnamen oder URLs. SQL Data Generator verwendet dann vordefinierte Werte, die dieser Kategorie angehören. Sie können auswählen, wie die einzelnen Spalten in jeder Tabelle generiert werden. Die gute Nachricht ist, dass SQL Data Generator auf Grundlage der Tabelle und der Spaltennamen und Datentypen eine fundierte Vermutung bezüglich des geeigneten Werts anstellt. Wenn z. B. Daten für eine zeichenfolgenbasierte Spalte namens „FirstName“ generiert werden, werden von SQL Data Generator Werte aus der Vornamenkategorie verwendet.
Nachdem Sie die Einstellungen überprüft haben, klicken Sie auf die Schaltfläche „Generate Data“, um den ausgewählten Tabellen die Daten hinzuzufügen. Das Generieren umfangreicher Mengen von Datenbankdaten wird mit SQL Data Generator zu einem schnellen und einfachen Vorgang.
Preis: $295.
SQL Data Generator generiert Datensätze und passt diese an (zum Vergrößern auf das Bild klicken)

Wichtige Blogs
Es ist erstaunlich, wie beliebt soziale Software in den vergangenen paar Jahren geworden ist. So ziemlich jeder hat einen Blog, und Websites wie Facebook, LinkedIn und Blogger.com sind einige der meistbesuchten Websites im Internet. Die meiste soziale Software nutzt Webdienste, XML und andere offene Standards, um Inhalte zu syndizieren und die Integration in Anwendungen von Drittanbietern zu ermöglichen. Um Einblick in diese Technologien und verwandte Entwicklungsthemen zu erhalten, brauchen Sie nicht weiter zu suchen als bis zu Dare Obasanjos Blog.
Dare Obasanjo verfügt über mehrere Jahre Erfahrung im Bewerten von und Arbeiten mit verschiedenen Standards sozialer Software. Er arbeitet derzeit als Programmmanager für das Microsoft Contacts-Team, das sich auf Back-End-Dienste für Windows Live Messenger und Windows Live Spaces konzentriert, und hat an den XML- und den XML Schemas-APIs in Microsoft .NET Framework mitgearbeitet. Dare Obasanjo ist auch der Schöpfer von RSS Bandit, einem beliebten RSS-Aggregator. Angesichts seines Hintergrunds kann Dare Obasanjo viele interessante Einblicke in die Standards, die von sozialer Software verwendet werden, sowie Tipps und Vorschläge für jene, die anhand dieser Standards programmieren, bieten.
Das Lesen von Dare Obasanjos Blog kann gelegentlich so sein, als würden Sie an einem Feuerwehrschlauch nippen. Dare Obasanjo fügt fast jeden Tag einen neuen Blogeintrag hinzu, und die meisten sind sehr lang und mit Informationen vollgepackt. Wenn Sie besser verstehen möchten, wie soziale Software und die beteiligten Standards funktionieren, ist dieser Blog ein Muss.

Anzeigen farbcodierter Syntax auf einer Webseite
In allen modernen Programmierumgebungen wird Farbcodierung verwendet, um die Lesbarkeit des Quellcodes zu verbessern. In Visual Studio werden Schlüsselwörter, Typen, Zeichenfolgen und Kommentare in verschiedenen Farben angezeigt. Außerdem können Schriftarten, -größen und -stile für diese und andere Tokens angepasst werden. Bei vielen Codebeispielen in gedruckten Medien sowie online gibt es jedoch keine Farbcodierung.
Die zusätzlichen Kosten, die mit dem Farbdruck verbunden sind, mögen den Mangel an Syntaxhervorhebung in Büchern und Computermagazinen erklären. Aber warum werden nicht in mehr Blogs und auf mehr Websites Quellcodebeispiele in Farbe codiert? Die primäre Herausforderung der Syntaxhervorhebung auf einer Webseite besteht im Generieren des geeigneten HTML und CSS. Es gibt jedoch einige kostenlose Tools, die diesen Prozess zu einem Kinderspiel machen.
Eine Option besteht darin, einen Onlinedienst zur Syntaxhervorhebung zu verwenden, z. B. Quick Highlighter (go.microsoft.com/fwlink/?LinkId=124072). Die Benutzeroberfläche von Quick Highlighter besteht aus einem großen Textfeld, in das der zu formatierende Code eingegeben wird, einer Dropdownliste mit 96 verschiedenen Programmiersprachen sowie einer Handvoll Formatierungsoptionen. Quick Highlighter generiert das HTML und CSS, um die Syntax farbig zu codieren, die Sie in Ihren Blogeintrag oder Ihre Webseite einfügen können.
Eines meiner bevorzugten Farbcodierungstools ist CopySourceAsHtml, ein Visual Studio-Add-In von Colin Coller (unter go.microsoft.com/fwlink/?LinkId=126646 erfahren Sie mehr darüber). Bei CopySourceAsHtml müssen Sie keine Webseite besuchen, um Ihre Syntax farbig zu codieren. Stattdessen können Sie das HTML und CSS in Visual Studio generieren.
Wählen Sie einfach den zu formatierenden Code aus, klicken Sie mit der rechten Maustaste, und wählen Sie dann die Menüoption „Copy As HTML“ aus. Dadurch wird ein Dialogfeld mit verschiedenen Formatierungsoptionen aufgerufen. Wenn Sie auf „OK“ klicken, wird das entsprechende HTML und CSS generiert und in die Windows-Zwischenablage kopiert. (Colin Coller hat das letzte Update von CopySourceAsHtml herausgegeben, bevor Visual Studio 2008 veröffentlicht wurde. Guy Burstein hat eine mit Visual Studio 2008 kompatible Version erstellt, die Sie unter go.microsoft.com/fwlink/?LinkId=124074 herunterladen können.)
Sie können auch Syntax von serverseitigem Code auf Ihrer ASP.NET-Seite hervorheben. Mit der Komponente squishySyntaxHighlighter von squishyWARE (go.microsoft.com/fwlink/?LinkId=124076) und zwei Zeilen Code können Sie eine Zeichenfolge in C#-, Visual Basic- oder XML-Syntax in HTML- und CSS-Markup mit Hervorhebungen umwandeln.
Preis: Alle kostenlos.
Quick Highlighter ist ein Onlinedienst zur Syntaxhervorhebung (zum Vergrößern auf das Bild klicken)

Das Bücherregal
ADO.NET ist eine Ansammlung von Klassen innerhalb der Namespaces „System.Data“ und „System.Xml“, mit denen Entwickler programmgesteuert Daten aus verschiedenen Datenspeichern abfragen, einfügen, aktualisieren und löschen können. Es gab eine Zeit, in der jeder Entwickler, der an einer datengesteuerten Anwendung arbeitete, über solide Kenntnisse in ADO.NET verfügen musste. Mit der Weiterentwicklung von .NET wurde viel von den Detailfunktionen und der Komplexität von ADO.NET mithilfe einiger Tools und Anwendungsarchitekturen von Microsoft und der Community übernommen. Aber vergessen Sie nicht gleich, was Sie über ADO.NET wissen. Es gibt immer noch ziemlich viel Anwendungscode dort draußen, in dem ADO.NET verwendet wird, und eine solide Kenntnis der Technologie ist wichtig, wenn Sie jemals die Funktionalität der Datenzugriffsschicht einer vorhandenen Architektur erweitern müssen.
Wenn ich ADO.NET-Code schreibe und pflege, habe ich gern das Buch „ADO.NET 3.5 Cookbook“ (O'Reilly, 2008) von Bill Hamilton in Reichweite. In ADO.NET 3.5 Cookbook werden mehr als 200 Rezepte für häufige ADO.NET-Probleme angeboten, vom Speicherort von Datenbank-Verbindungszeichenfolgen bis hin zum asynchronen Ausführen einer SQL-Anweisung. Wenn ich mich nicht mehr erinnern kann, wie eine bestimmte Aktion durchgeführt wird, nehme ich dieses Buch zur Hand, schlage das Inhaltsverzeichnis auf, suche das Rezept heraus, und los geht’s.
Jedes Rezept beginnt mit einer Problembeschreibung ähnlich der folgenden: „Sie möchten auf einen Ausgabeparameter zugreifen, der von einer gespeicherten Prozedur zurückgegeben wurde.“ Dann folgen die Lösung und schließlich die Diskussion. Dieser Ansatz – Problem/Lösung/Diskussion – führt zu eigenständigen Rezepten, die einfach zu verstehen sind. Außerdem stellt der Autor praktisch alle Lösungen als Konsolenanwendungen dar, im Gegensatz zu einer Windows Forms- oder Webanwendung. Dadurch wird der Lösungsabschnitt kurz und prägnant, da das Erstellen einer Benutzeroberfläche nicht schrittweise erklärt werden muss.
Wenn Sie ein Buch benötigen, das tiefe Einblicke in die Architekturentscheidungen hinter ADO.NET bietet, oder wenn Sie ein Buch suchen, das sich auf neue Features in ADO.NET 3.5 wie LINQ konzentriert, ist dieses Buch nichts für Sie. Wenn Sie aber ein Nachschlagewerk suchen, in dem Sie schnell Lösungen zu häufigen Problemen finden, legen Sie sich eine Ausgabe von ADO.NET 3.5 Cookbook zu.
Preis: $54.99.


Senden Sie Fragen und Kommentare für Scott Mitchell (in englischer Sprache) an toolsmm@microsoft.com.

Scott Mitchell, Autor zahlreicher Bücher und Gründer von 4GuysFromRolla.com, arbeitet seit 1998 als MVP mit Microsoft-Webtechnologien. Scott Mitchell ist unabhängiger Berater, Schulungsleiter und Schriftsteller. Sie erreichen ihn unter Mitchell@4guysfrom­rolla.com oder über seinen Blog unter ScottOnWriting.NET.

Page view tracker