Freigeben über


Hinzufügen einer Datenquelle für einen Webleistungstest

Binden Sie Daten, um dem gleichen Test verschiedene Werte bereitzustellen, z. B. um den Formularbereitstellungsparametern verschiedene Werte bereitzustellen.

Datenbindung an einen Webleistungstest

Es wird eine ASP.NET-Beispielanwendung verwendet. Sie hat drei ASPX-Seiten: die Standardseite, eine Seite "Red" und eine Seite "Blue". Die Standardseite enthält ein Optionsfeld für die Auswahl von "Red" oder "Blue" sowie eine Schaltfläche zum Senden. Die anderen beiden ASPX-Seiten sind sehr einfach. Eine hat die Bezeichnung "Red" und die andere die Bezeichnung "Blue". Wenn Sie auf der Standardseite "Senden" auswählen, wird eine der beiden anderen Seiten angezeigt. Sie können eine Anwendung wie diese erstellen , unser Beispiel herunterladen oder einfach mit Ihrer eigenen Webanwendung fortfahren.

Ausführen der zu testenden Webanwendung

Die Projektmappe sollte auch einen Webleistungstest enthalten, der die Seiten der Webanwendung durchsucht, ähnlich wie im ColorWebAppTest-Projekt, das in Aufzeichnen und Ausführen eines Webleistungstests [umgeleitet] erstellt wird.

Projektmappe mit Webleistungstest

Erstellen einer SQL-Datenbank

  1. Wenn Sie nicht über Visual Studio Ultimate verfügen, rufen Sie es hier ab.

  2. Erstellen Sie eine SQL-Datenbank.

    Eine neue SQL-Datenbank hinzufügen

  3. Erstellen Sie ein Datenbankprojekt.

    Neues Projekt aus Datenbank erstellen

  4. Fügen Sie der Datenbank eine Tabelle hinzu.

    Eine neue Tabelle zum Datenbankprojekt hinzufügen

  5. Fügen Sie der Tabelle Felder hinzu.

    Felder zur Tabelle hinzufügen

  6. Veröffentlichen Sie das Datenbankprojekt.

    Datenbankprojekt über den Projektmappen-Explorer veröffentlichen

  7. Fügen Sie den Feldern Daten hinzu.

    Daten zu den Feldern hinzufügen

Hinzufügen der Datenquelle

  1. Fügen Sie eine Datenquelle hinzu.

    Datenquelle zum Webleistungstest hinzufügen

  2. Wählen Sie den Typ der Datenquelle aus, und geben Sie ihr einen Namen.

    Namen für die Datenbankquelle angeben

  3. Erstellen Sie eine Verbindung.

    Wählen Sie "Neue Verbindung" aus

    Geben Sie die Verbindungsdetails ein.

    Eigenschaften der SQL-Datenbankverbindung eingeben

  4. Wählen Sie die Tabelle aus, die Sie für den Test verwenden möchten.

    Tabelle "Color" als Datenquelle hinzufügen

    Die Tabelle wird an den Test gebunden.

    Der Knoten "Datenquellen" wird zum Webleistungstest hinzugefügt

  5. Speichern Sie den Test.

Binden der Daten

  1. Binden Sie das ColorName-Feld.

    ColorName-Feld an RadioButtonList1-Wert binden

  2. Öffnen Sie die Datei "Local.testsettings" im Projektmappen-Explorer, und wählen Sie die Option "Ein Testlauf pro Datenquellenzeile" aus.

    Testeinstellungsdatei bearbeiten

  3. Speichern Sie den Webleistungstest.

Ausführen des Tests mit Daten

  1. Führen Sie den Test aus.

    Webleistungstest ausführen, um Bindung zu überprüfen

    Die zwei Testläufe werden für jede Datenzeile angezeigt. Testlauf 1 sendet eine Anforderung für die Seite "Red.aspx" und Testlauf 2 sendet eine Anforderung für die Seite "Blue.aspx".

    Ergebnisse des Testlaufs

    Wenn Sie eine Bindung an eine Datenquelle durchführen, können Sie gegen die Standardregel "Antwort-URL" verstoßen. In diesem Fall wird der Fehler in Testlauf 2 von der Regel ausgelöst, die die Seite "Red.aspx" der ursprünglichen Testaufzeichnung erwartet. Aufgrund der Datenbindung wird sie aber zur Seite "Blue.aspx" geleitet.

  2. Korrigieren Sie den Validierungsfehler, indem Sie die Validierungsregel "Antwort-URL" löschen und den Test erneut ausführen.

    Validierungsregel für die Antwort-URL löschen

    Der Webleistungstest ist jetzt mit Datenbindung erfolgreich.

    Mithilfe der Datenbindung ist der Test erfolgreich

F & A

F: Welche Datenbanken kann ich als Datenquelle verwenden?

A: Es stehen Ihnen folgende Möglichkeiten zur Verfügung:

  • Microsoft SQL Azure.

  • Jede Version von Microsoft SQL Server 2005 oder höher.

  • Microsoft SQL Server-Datenbankdatei (einschließlich SQL Express).

  • Microsoft ODBC.

  • Microsoft Access-Datei, die den .NET Framework-Anbieter für OLE DB verwendet.

  • Oracle 7.3, 8i, 9i oder 10g.

F: Wie verwende ich eine CSV-Textdatei (Comma Separated Value) als Datenquelle?

A: Ja.

  1. Erstellen Sie einen Ordner zur Organisation der Projektdatenbankartefakte, und fügen Sie ein Element hinzu.

    Neues Element zum Datenordner hinzufügen

  2. Erstellen einer Textdatei

    Nennen Sie die neue Textdatei "ColorData.csv"

  3. Bearbeiten Sie die Textdatei, und fügen Sie folgenden Text hinzu:

    ColorId, ColorName
    0,Red
    1,Blue
    
  4. Befolgen Sie die Schritte unter Binden der SQL-Daten, wählen Sie aber CSV-Datei als Datenquelle aus.

    Namen eingeben und CSV-Datei auswählen

F: Was muss ich tun, wenn die vorhandene CSV-Datei keine Spaltenüberschriften enthält?

A: Wenn Sie keine Spaltenüberschriften hinzufügen können, können Sie eine Schemabeschreibungsdatei verwenden und die CSV-Datei wie eine Datenbank behandeln.

  1. Fügen Sie eine neue Textdatei mit dem Namen "schema.ini" hinzu.

    Eine schema.ini-Datei hinzufügen

  2. Bearbeiten Sie die Datei schema.ini, um die Informationen hinzuzufügen, mit denen die Struktur der Daten beschrieben wird. Eine Schemadatei, die die CSV-Datei beschreibt, kann folgendermaßen aussehen:

    [testdata.csv]
    ColNameHeader=False
    
  3. Fügen Sie dem Test eine Datenquelle hinzu.

    Datenquelle zum Webleistungstest hinzufügen

  4. Wenn Sie die Datei "schema.ini" verwenden, wählen Sie "Datenbank" (nicht die CSV-Datei) als Datenquelle aus, und geben Sie ihr einen Namen.

    Datenbankdatenquelle hinzufügen

  5. Erstellen Sie eine neue Verbindung.

    Wählen Sie "Neue Verbindung" aus

  6. Wählen Sie den .NET Framework-Datenanbieter für OLE DB aus.

    .NET Framework-Datenanbieter für OLE DB auswählen

  7. Wählen Sie Erweitert aus.

    "Erweitert" auswählen

  8. Wählen Sie für die Eigenschaft "Anbieter" die Option "Microsoft.Jet.OLEDB.4.0" aus, und legen anschließend die erweiterten Eigenschaften auf "Text; HDR=NO" fest.

    Erweiterte Eigenschaften anwenden

  9. Geben Sie den Namen des Ordners ein, der die Schemadatei enthält, und testen Sie die Verbindung.

    Pfad zum Datenordner eingeben

  10. Wählen Sie die CSV-Datei aus, die Sie verwenden möchten.

    Textdatei auswählen

    Wenn Sie damit fertig sind, wird die CSV-Datei als Tabelle angezeigt.

    Zum Test hinzugefügte Datenquelle

F: Wie verwende ich eine XML-Datei als Datenquelle?

A: Ja.

  1. Erstellen Sie einen Ordner zur Organisation der Projektdatenbankartefakte, und fügen Sie ein Element hinzu.

    Neues Element zum Datenordner hinzufügen

  2. Erstellen Sie eine XML-Datei.

    ColorData.xml-Datei hinzufügen

  3. Bearbeiten Sie die XML-Datei, und fügen Sie die Daten hinzu:

    <?xml version="1.0" encoding="utf-8" ?>
    <ColorData>
        <Color>
            <ColorId>0</ColorId>
            <ColorName>Red</ColorName>
        </Color>
        <Color>
            <ColorId>1</ColorId>
            <ColorName>Blue</ColorName>
        </Color>
    </ColorData>
    
  4. Befolgen Sie die Schritte unter Binden der SQL-Daten, wählen Sie aber XML-Datei als Datenquelle aus.

    Namen eingeben und XML-Datei auswählen

F: Kann ich einer Webdienstanforderung, die SOAP verwendet, eine Datenbindung hinzufügen?

A: Ja; Sie müssen den SOAP-XML-Code manuell ändern.

  1. Wählen Sie in der Anforderungsstruktur die Webdienstanforderung und im Fenster "Eigenschaften" die Auslassungszeichen (...) in der Eigenschaft "Zeichenfolgentext".

    Zeichenfolgentext des Webdiensts bearbeiten

  2. Ersetzen Sie die Werte im SOAP-Text durch datengebundene Werte, und verwenden Sie dabei folgende Syntax:

    {{DataSourceName.TableName.ColumnName}}
    

    Wenn Ihr Code beispielsweise folgendermaßen lautet:

    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="https://schemas.xmlsoap.org/soap/envelope/">
        <soap:Body>
            <CheckStatus xmlns="http://tempuri.org/">
                <userName>string</userName>
                <password>string</password>
                <orderID>int</orderID>
            </CheckStatus>
        </soap:Body>
    </soap:Envelope>
    

    Können Sie in Folgenden ändern:

    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="https://schemas.xmlsoap.org/soap/envelope/">
        <soap:Body>
            <CheckStatus xmlns="http://tempuri.org/">
                <userName>{{DataSourceName.Users.Name}}</userName>
                <password>{{DataSourceName.Users.Password}}</password>
                <orderID>{{DataSourceName.Orders.OrderID}}</orderID>
            </CheckStatus>
        </soap:Body>
    </soap:Envelope>
    
  3. Speichern Sie den Test.