8. Anhänge
8.1. Wo findet man Spring?
Die Hauptwebsite von Spring ist [http://www.springframework.org/]. Dies ist die Website der Java-Version. Die derzeit in Entwicklung befindliche Version .NET (Stand: April 2005) ist unter der URL [http://www.springframework.net/] zu finden.

Die Download-Seite befindet sich unter [SourceForge]:

Sobald Sie die oben genannte ZIP-Datei heruntergeladen haben, entpacken Sie sie:

In diesem Dokument haben wir nur den Inhalt des Ordners [bin] verwendet:

In einem Visual Studio-Projekt, das Spring verwendet, müssen Sie systematisch zwei Dinge tun:
- die oben genannten Dateien in den Ordner „[bin]“ des Projekts kopieren
- dem Projekt eine Referenz zur Assembly [Spring.Core.dll] hinzufügen
8.2. Wo finde ich NUnit?
Die Hauptwebsite von Nunit lautet [http://www.nunit.org/]. Die im April 2005 verfügbare Version ist 2.2.0:

Laden Sie diese Version herunter und installieren Sie sie. Bei der Installation wird ein Ordner erstellt, in dem sich die grafische Testversion befindet:
Das Interessante befindet sich im Ordner [bin]:


Der Pfeil oben zeigt auf das grafische Test-Dienstprogramm. Die Installation hat außerdem neue Elemente zum Assembly-Repository von Visual Studio hinzugefügt, die wir uns nun ansehen werden.
Erstellen wir das folgende Visual Studio-Projekt:
Die getestete Klasse befindet sich in [Personne.vb]:

Public Class Personne
' private Felder
Private _nom As String
Private _age As Integer
' Standardkonstruktor
Public Sub New()
End Sub
' Eigenschaften, die mit privaten Feldern verknüpft sind
Public Property nom() As String
Get
Return _nom
End Get
Set(ByVal Value As String)
_nom = Value
End Set
End Property
Public Property age() As Integer
Get
Return _age
End Get
Set(ByVal Value As Integer)
_age = Value
End Set
End Property
' Identitätszeichenfolge
Public Overrides Function tostring() As String
Return String.Format("[{0},{1}]", nom, age)
End Function
' init-Methode
Public Sub init()
Console.WriteLine("init personne {0}", Me.ToString)
End Sub
' close-Methode
Public Sub close()
Console.WriteLine("destroy personne {0}", Me.ToString)
End Sub
End Class
Die Testklasse befindet sich in [NunitTestPersonne-1.vb]:
Imports System
Imports NUnit.Framework
<TestFixture()> _
Public Class NunitTestPersonne
' getestetes Objekt
Private personne1 As Personne
<SetUp()> _
Public Sub init()
' Es wird eine Instanz von „Person“ erstellt
personne1 = New Personne
' Protokoll
Console.WriteLine("setup test")
End Sub
<Test()> _
Public Sub demo()
' Bildschirmprotokoll
Console.WriteLine("début test")
' Person1 initialisieren
With personne1
.nom = "paul"
.age = 10
End With
' Tests
Assert.AreEqual("paul", personne1.nom)
Assert.AreEqual(10, personne1.age)
' Bildschirmprotokoll
Console.WriteLine("fin test")
End Sub
<TearDown()> _
Public Sub destroy()
' Nachverfolgung
Console.WriteLine("teardown test")
End Sub
End Class
Es sind mehrere Dinge zu beachten:
- Die Methoden verfügen über Attribute wie <Setup()>, <TearDown()>, …
- Damit diese Attribute erkannt werden, muss Folgendes gegeben sein:
- das Projekt auf die Assembly [nunit.framework.dll] verweist
- die Testklasse den Namespace [NUnit.Framework] importiert
Die Referenz wird durch einen Rechtsklick auf [References] im Projekt-Explorer hergestellt:
![]() | ![]() |

Die Assembly „[nunit.framework.dll]“ sollte in der angezeigten Liste enthalten sein, wenn die Installation von „[Nunit]“ erfolgreich verlaufen ist. Doppelklicken Sie einfach auf die Assembly, um sie dem Projekt hinzuzufügen:

Anschließend muss die Testklasse [NunitTestPersonne] den Namespace [NUnit.Framework] importieren:
Die Attribute der Testklasse [NunitTestPersonne] müssen dann erkannt werden.
- Das Attribut <Test()> bezeichnet eine zu testende Methode
- Das Attribut <Setup()> bezeichnet die Methode, die vor jeder getesteten Methode ausgeführt werden soll
- Das Attribut <TearDown()> bezeichnet die Methode, die nach jeder getesteten Methode ausgeführt werden soll
- Die Methode Assert.AreEqual ermöglicht es, die Gleichheit zweier entités.Il zu testen. Es gibt zahlreiche weitere Methoden vom Typ Assert.xx.
- Das Dienstprogramm NUnit bricht die Ausführung einer getesteten Methode ab, sobald eine Methode vom Typ [Assert] fehlschlägt, und zeigt eine Fehlermeldung an. Andernfalls wird eine Erfolgsmeldung angezeigt.
Konfigurieren wir unser Projekt so, dass es eine DLL generiert:

Die generierte DLL erhält den Namen [nunit-demos-1.dll] und wird standardmäßig im Ordner [bin] des Projekts abgelegt. Generieren wir unser Projekt. Im Ordner [bin] erhalten wir:

Starten wir nun das grafische Testprogramm Nunit. Zur Erinnerung: Es befindet sich in <Nunit>\bin und heißt [nunit-gui.exe]. <Nunit> bezeichnet den Installationsordner von [Nunit]. Es erscheint folgende Benutzeroberfläche:

Verwenden wir den Menüpunkt [File/Open], um die Dateien DLL und [nunit-demos-1.dll] aus unserem Projekt zu laden:

[Nunit] kann die Testklassen, die sich in der geladenen DLL befinden, automatisch erkennen. Hier findet es die Klasse [NunitTestPersonne]. Anschließend zeigt es alle Methoden der Klasse an, die das Attribut <Test()> besitzen. Über die Schaltfläche [Run] können die Tests für das ausgewählte Objekt gestartet werden. Ist dies die Klasse [NunitTestPersonne], werden alle angezeigten Methoden getestet. Man kann den Test einer bestimmten Methode anfordern, indem man diese auswählt und ihre Ausführung über [Run] anfordert. Fordern wir die Ausführung der Klasse an:

Ein erfolgreicher Test einer Methode wird durch einen grünen Punkt neben der Methode im linken Fenster symbolisiert. Ein fehlgeschlagener Test wird durch einen roten Punkt symbolisiert.
Das Fenster [Console.Out] auf der rechten Seite zeigt die von den getesteten Methoden erzeugten Bildschirmausgaben an. Hier wollten wir den Ablauf eines Tests verfolgen:
- Zeile 1 zeigt, dass die Attributmethode <Setup()> vor dem Test ausgeführt wird
- Die Zeilen 2–3 werden von der getesteten Methode [demo] erzeugt (siehe Code weiter oben)
- Zeile 4 zeigt, dass die Attributmethode <TearDown()> nach dem Test ausgeführt wird

