Freigeben über


Testen einer Klasse

Aktualisiert: November 2007

In dieser Lektion erfahren Sie, wie Sie die Instanz einer Klasse erstellen, um die Klasse zu testen.

In den letzten Lektionen haben Sie eine Persons-Klasse erstellt und ihr Eigenschaften, Methoden und Ereignisse zugewiesen. Bisher bestand Ihre Aufgabe darin, Code hinzuzufügen. Jetzt ist es an der Zeit, die Persons-Klasse zu verwenden und zu überprüfen, ob sie wie erwartet funktioniert.

Erstellen einer Instanz einer Klasse

Auch wenn es Ihnen vielleicht nicht bewusst war, haben Sie bereits in vielen der vorherigen Lektionen Klassen verwendet. Formulare und Steuerelemente sind eigentlich Klassen. Wenn Sie ein Button-Steuerelement auf ein Formular ziehen, erstellen Sie eine Instanz der Button-Klasse.

Sie können jede Klasse auch in Ihrem Code instanziieren, indem Sie eine Deklaration mit dem Schlüsselwort New verwenden. Wenn Sie beispielsweise eine neue Instanz der Button-Klasse erstellen möchten, fügen Sie den folgenden Code hinzu.

Dim aButton As New Button

Zum Verwenden und Testen der Persons-Klasse müssen Sie zuerst ein Testprojekt erstellen und einen Verweis auf das Klassenmodul hinzufügen.

Übung

So erstellen Sie ein Testprojekt für die Klasse

  1. Öffnen Sie das in der vorigen Lektion erstellte Persons-Projekt. Wenn Sie das Projekt nicht gespeichert haben, müssen Sie zuerst zur vorherigen Lektion, Hinzufügen von Methoden zu einer Klasse, zurückkehren und die Prozeduren abschließen.

  2. Zeigen Sie im Menü Datei auf Hinzufügen, und klicken Sie dann auf Neues Projekt.

  3. Klicken Sie im Dialogfeld Neues Projekt im Bereich Vorlagen auf Windows Forms-Anwendung.

  4. Geben Sie PersonsTest in das Feld Name ein, und klicken Sie dann auf OK.

    Das neue Windows Forms-Projekt wird nun dem Projektmappen-Explorer hinzugefügt, und ein neues Formular wird angezeigt.

  5. Wählen Sie im Projektmappen-Explorer das PersonsTest-Projekt aus, und klicken Sie dann im Menü Projekt auf die Option Als Startprojekt festlegen.

  6. Wählen Sie im Projektmappen-Explorer das PersonsTest-Projekt aus, und klicken Sie dann im Menü Projekt auf die Option Verweis hinzufügen.

    Das Dialogfeld Verweis hinzufügen wird angezeigt.

  7. Klicken Sie auf die Registerkarte Projekte, und wählen Sie dann Personen aus. Klicken Sie anschließend auf OK.

  8. Doppelklicken Sie auf das Formular, um den Code-Editor zu öffnen, und geben Sie dann direkt unter der Zeile Public Class Form1 die folgende Deklaration ein.

    Dim person1 As New Persons.Persons
    

    Damit wird eine neue Instanz der Persons-Klasse deklariert. Sie werden sich vielleicht fragen, warum Sie zweimal Persons eingeben mussten. Die erste Instanz ist das Klassenmodul Persons.vb, während es sich bei der zweiten Instanz um die Persons-Klasse in diesem Modul handelt.

  9. Klicken Sie im Menü Datei auf Alle speichern.

Testen der Klasse

Der nächste Schritt besteht darin, eine Benutzeroberfläche und Code, der die Persons-Klasse verwendet, hinzuzufügen. Sie fügen Textfelder, in die Benutzer Werte für die einzelnen Eigenschaften (außer für die schreibgeschützte Age-Eigenschaft) eingeben, ein Kontrollkästchen für das Married-Feld sowie Schaltflächen zum Testen der öffentlichen Methoden hinzu.

Übung

So testen Sie die Klasse

  1. Wählen Sie im Projektmappen-Explorer Form1 aus, und klicken Sie dann im Menü Ansicht auf Designer.

  2. Ziehen Sie von der Toolbox vier TextBox-Steuerelemente, ein CheckBox-Steuerelement und zwei Button-Steuerelemente auf das Formular.

  3. Wählen Sie das erste Button-Steuerelement aus, und legen Sie dann im Fenster Eigenschaften die Text-Eigenschaft auf Update fest.

  4. Wählen Sie das zweite Button-Steuerelement aus, und legen Sie dann im Fenster Eigenschaften die Text-Eigenschaft auf Full Name fest.

  5. Doppelklicken Sie auf die erste Schaltfläche (Aktualisieren), um den Code-Editor zu öffnen, und fügen Sie dann im Button1_Click-Ereignishandler den folgenden Code hinzu.

    With person1
        .FirstName = Textbox1.Text
        .MiddleName = Textbox2.Text
        .LastName = Textbox3.Text
        .BirthYear = Textbox4.Text
        .Married = CheckBox1.Checked
    End With
    

    Beachten Sie bei der Eingabe, dass eine Liste mit allen Membern der Persons-Klasse angezeigt wird. Da sie als Verweis hinzugefügt wurde, zeigt IntelliSense Informationen zur Klasse genauso wie für jede andere Klasse an.

  6. Fügen Sie im Button2_Click-Ereignishandler folgenden Code hinzu:

    ' Test the FullName method.
    MsgBox(person1.FullName)
    
    ' test the Age property and CalcAge method.
    MsgBox(CStr(person1.Age) & " years old")
    
    ' Test the Married property.
    If person1.Married = True Then
        MsgBox(person1.FirstName & " is married")
    Else
        MsgBox(person1.FirstName & " is single")
    End If
    
  7. Drücken Sie F5, um das Projekt auszuführen und das Formular anzuzeigen.

    1. Geben Sie im ersten Textfeld Ihren Vornamen ein.

    2. Geben Sie im zweiten Textfeld Ihren zweiten Vornamen ein.

    3. Geben Sie im dritten Textfeld Ihren Nachnamen ein.

    4. Geben Sie im vierten Textfeld Ihr Geburtsjahr vierstellig (z. B. 1983) ein.

    5. Aktivieren Sie das Kontrollkästchen, wenn Sie verheiratet sind.

  8. Klicken Sie auf die Schaltfläche Aktualisieren, um die Eigenschaften der Klasse festzulegen, und klicken Sie dann auf die Schaltfläche Vollständiger Name.

    Drei Meldungsfelder werden angezeigt. Diese Meldungsfelder zeigen den vollständigen Namen, das Alter und den Familienstand an.

  9. Klicken Sie im Menü Datei auf Alle speichern.

Testen der überladenen Methoden

Wenn Sie die optionale Lektion Genauere Betrachtung: Erstellen von mehreren Versionen derselben Methode durch Überladen abgeschlossen haben, können Sie auch die überladenen Methoden testen, die Sie der Persons-Klasse hinzugefügt haben. Sofern Sie die Lektion noch nicht beendet haben, können Sie zur Lektion zurückkehren und dies jetzt nachholen. Andernfalls lassen Sie die folgende Prozedur aus.

Übung

So testen Sie die überladenen Methoden

  1. Wählen Sie im Projektmappen-Explorer Form1 aus, und klicken Sie dann im Menü Ansicht auf Designer.

  2. Ziehen Sie zwei weitere Button-Steuerelemente aus der Toolbox auf das Formular.

  3. Wählen Sie das dritte Button-Steuerelement aus, und legen Sie dann im Eigenschaftenfenster die Text-Eigenschaft auf With fest.

  4. Wählen Sie das vierte Button-Steuerelement aus, und legen Sie dann im Eigenschaftenfenster die Text-Eigenschaft auf Without fest.

  5. Doppelklicken Sie auf die erste Schaltfläche (With), um den Code-Editor zu öffnen, und geben Sie dann im Button3_Click-Ereignishandler den folgenden Code ein.

    MsgBox(person1.FirstName & " " & person1.MiddleInitial(True) & _
                               " " & person1.LastName)
    

    Beachten Sie bei der Eingabe, dass eine Liste mit allen Membern der Persons-Klasse angezeigt wird. Da sie als Verweis hinzugefügt wurde, zeigt IntelliSense Informationen zu der Klasse genauso wie für jede andere Klasse an.

  6. Fügen Sie im Button4_Click-Ereignishandler folgenden Code hinzu:

    MsgBox(person1.FirstName & " " & person1.MiddleInitial & _
                               " " & person1.LastName)
    
  7. Drücken Sie F5, um das Projekt auszuführen und das Formular anzuzeigen.

    1. Geben Sie im ersten Textfeld Ihren Vornamen ein.

    2. Geben Sie im zweiten Textfeld Ihren zweiten Vornamen ein.

    3. Geben Sie im dritten Textfeld Ihren Nachnamen ein.

    4. Geben Sie im vierten Textfeld Ihr Geburtsjahr vierstellig (z. B. 1983) ein.

    5. Aktivieren Sie das Kontrollkästchen, wenn Sie verheiratet sind.

  8. Klicken Sie auf die Schaltfläche Aktualisieren, um die Eigenschaften der Klasse festzulegen, und klicken Sie dann auf die Schaltfläche With.

    Ein Meldungsfeld wird angezeigt. Es enthält den Namen mit einem Punkt nach dem Anfangsbuchstaben des zweiten Vornamens.

  9. Klicken Sie auf die Schaltfläche Without.

    Ein Meldungsfeld wird angezeigt. Es enthält den Namen ohne Punkt nach dem Anfangsbuchstaben des zweiten Vornamens.

  10. Klicken Sie im Menü Datei auf Alle speichern.

Testen von Ereignishandlern

Wenn Sie die optionale Lektion Genauere Betrachtung: Behandeln von Ereignissen abgeschlossen haben, können Sie auch die Ereignishandler testen, die Sie der Persons-Klasse hinzugefügt haben. Sofern Sie diese Lektion noch nicht beendet haben, können Sie zu ihr zurückkehren und dies jetzt nachholen. Andernfalls lassen Sie das folgende Verfahren aus.

Übung

So testen Sie den Ereignishandler

  1. Wählen Sie im Projektmappen-Explorer Form1 aus, und klicken Sie dann im Menü Ansicht auf Code.

  2. Fügen Sie die Anweisung WithEvents vor der person1-Deklaration hinzu, wie im folgenden Code gezeigt:

    WithEvents person1 As New Persons.Persons
    
  3. Fügen Sie folgende Prozedur zu Form1 hinzu. In diesem Code wird das berechnete Alter überprüft und eine Meldung auf Grundlage des Ergebnisses angezeigt.

    Private Sub person1_AgeCalculated(ByVal Age As Integer) _
        Handles person1.AgeCalculated
    
        If Age > 18 Then
            MsgBox("You have been over 18 for " & Age - 18 _
                & " years.")
        Else
            MsgBox("You will be 18 in " & 18 - Age & " years")
        End If
    
    End Sub
    
  4. Drücken Sie F5, um das Projekt auszuführen und das Formular anzuzeigen.

    1. Geben Sie im ersten Textfeld Ihren Vornamen ein.

    2. Geben Sie im zweiten Textfeld Ihren zweiten Vornamen ein.

    3. Geben Sie im dritten Textfeld Ihren Nachnamen ein.

    4. Geben Sie im vierten Textfeld Ihr Geburtsjahr vierstellig (z. B. 1983) ein.

    5. Aktivieren Sie das Kontrollkästchen, wenn Sie verheiratet sind.

  5. Klicken Sie auf die Schaltfläche Aktualisieren, um die Eigenschaften der Klasse festzulegen, und klicken Sie dann auf die Schaltfläche Vollständiger Name.

    In einem Meldungsfeld wird Ihr vollständiger Namen angezeigt. Wenn Sie älter als 18 Jahre sind, wird in einem weiteren Meldungsfenster angezeigt, seit wann Sie älter als 18 Jahre alt sind. Wenn Sie unter 18 Jahre alt sind, wird in einem Meldungsfenster angezeigt, wie lange es noch dauert, bis Sie 18 Jahre alt werden. In einem weiteren Meldungsfeld wird dann Ihr Alter angezeigt.

  6. Klicken Sie im Menü Datei auf Alle speichern.

Nächste Schritte

In dieser Lektion haben Sie gelernt, wie Sie ein Testprojekt erstellen und dieses zum Testen der Eigenschaften, Methoden und Ereignisse Ihrer Klasse verwenden. In der nächsten Lektion erfahren Sie, wie Sie mithilfe der Vererbung eine Klasse auf der Grundlage einer vorhandenen Klasse erstellen.

Nächste Lektion: Erstellen einer Klasse auf Basis einer vorhandenen Klasse: Verwenden der Vererbung.

Siehe auch

Aufgaben

Hinzufügen von Methoden zu einer Klasse

Genauere Betrachtung: Erstellen von mehreren Versionen derselben Methode durch Überladen