How to: Create a Test Setting for a Distributed Load Test

Dieses Thema gilt für folgende Anwendungsbereiche:

Visual Studio Ultimate

Visual Studio Premium

Visual Studio Professional 

Visual Studio Express

Thema ist vorhanden Thema ist nicht vorhanden Thema ist nicht vorhanden Thema ist nicht vorhanden

Für Auslastungstests können Testeinstellungen konfiguriert werden, die das Verteilen des Auslastungstests auf mehrere Computer mit Test-Agents und Testcontrollern ermöglichen. Die Testeinstellungen können auch zur Verwendung von Adaptern für diagnostische Daten konfiguriert werden, die angeben, welche Datentypen gesammelt und wie die Testcomputer bei der Ausführung der Auslastungstests in Visual Studio 2010 Ultimate beeinflusst werden sollen. Sie können z. B. den Adapter für diagnostische Daten des ASP.NET-Profilers verwenden, um den Leistungsstrukturplan des Codes zu sammeln. Darüber hinaus können Diagnosedatenadapter verwendet werden, um auf dem Testcomputer potenzielle Engpässe zu simulieren oder den verfügbaren Systemspeicher zu reduzieren.

Die Testeinstellungen für Visual Studio werden in einer Datei gespeichert. Mit diesen wird Folgendes definiert:

  • der Satz von Rollen, die für die zu testende Anwendung erforderlich sind

  • die für die Testausführung zu verwendende Rolle

  • die für jede Rolle zu verwendenden Adapter für diagnostische Daten

Beim Ausführen der Tests wählen Sie die aktiven Testeinstellungen anhand der erforderlichen Elemente für diesen bestimmten Testlauf aus. Die Testeinstellungsdatei wird als Teil der Projektmappe gespeichert. Die Datei weist die Erweiterung .testsettings auf.

Wenn Sie ein Testprojekt einer Projektmappe hinzufügen, werden zwei Standardtesteinstellungen erstellt. Diese werden der Projektmappe automatisch unter dem Ordner Projektmappenelemente hinzugefügt. Wenn eine dieser Testeinstellungen die erforderlichen Elemente für die Testausführung bereitstellt, können Sie diese verwenden, indem Sie sie als aktiv auswählen:

  • Local.testsettings: Damit werden die Tests lokal ohne ausgewählten Adapter für diagnostische Daten ausgeführt. Dies ist die Standardtesteinstellung in Visual Studio.

  • Traceandtestimpact.testsettings: Damit werden die Tests lokal ausgeführt, wobei die folgenden Adapter für diagnostische Daten so konfiguriert sind, dass Daten von allen Modulen und Prozessen gesammelt werden:

    • IntelliTrace

    • Testauswirkung

    • Systeminformationen

Der Testcontroller verfügt über Agents, die für die einzelnen Rollen in den Testeinstellungen verwendet werden können. Weitere Informationen zu Test-Agent-Controllern und Agents finden Sie unter Einrichten von Testcomputern zum Ausführen von Tests oder Sammeln von Daten und Verwalten von Testcontrollern und Test-Agents.

Mit den folgenden Prozeduren erstellen und entfernen Sie Testeinstellungen in der Lösung für Auslastungstests, die Sie in Visual Studio 2010 Ultimate ausführen möchten.

Erstellen einer Testeinstellung für einen verteilten Auslastungstest

So fügen Sie Testeinstellungen für einen verteilten Auslastungstest hinzu

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf Projektmappenelemente, zeigen Sie auf Hinzufügen, und klicken Sie dann auf Neues Element.

    Das Dialogfeld Neues Element hinzufügen wird angezeigt.

  2. Klicken Sie im Bereich Installierte Vorlagen auf Testeinstellungen.

  3. (Optional) Ändern Sie Im Feld Testname den Namen der Testeinstellungsdatei.

  4. Klicken Sie auf Hinzufügen.

    Die neue Testeinstellungsdatei wird im Projektmappen-Explorer im Ordner Projektmappenelemente angezeigt.

    Tipp

    Die in Visual Studio 2010 Ultimate angezeigte Liste der Testeinstellungen wird von der Liste der Testeinstellungsdateien im Ordner Projektmappenelemente abgeleitet. Die Testeinstellungsdateien im Ordner Projektmappenelemente werden z. B. angezeigt, wenn Sie die im Menü Test die Option Aktive Testeinstellungen auswählen verwenden. Wenn Sie eine Testeinstellungsdatei an einen anderen Speicherort der Projektmappenhierarchie verschieben, hat dies zur Folge, dass diese in der integrierten Entwicklungsumgebung von Visual Studio 2010 Ultimate nicht mehr als Testeinstellung verwendet werden kann.

  5. Das Dialogfeld Testeinstellungen wird angezeigt. Die Seite Allgemein ist ausgewählt.

    Sie können die Testeinstellungswerte jetzt bearbeiten und speichern.

    Tipp

    Jeder erstellte Satz von Testeinstellungen wird im Menü Test als Option unter Aktive Testeinstellungen auswählen und Testeinstellungen bearbeiten aufgeführt.

  6. Geben Sie unter Name den Namen für die Testeinstellungen ein.

  7. (Optional) Geben Sie unter Beschreibung eine Beschreibung für die Testeinstellung ein, damit andere Teammitglieder ihren Zweck erkennen können.

  8. (Optional) Um das Standardnamensschema für die Testläufe auszuwählen, wählen Sie Standardbenennungsschema aus. Um ein eigenes Namensschema zu definieren, wählen Sie Benutzerdefiniertes Schema aus, und geben Sie dann den Text ein, der in Präfixtext angezeigt werden soll. Wenn Sie das Datum und den Zeitstempel an den Testlaufnamen anfügen möchten, wählen Sie Datums-/Zeitstempel anfügen aus.

  9. Klicken Sie auf Rollen.

    Die Seite Rollen wird angezeigt.

    Testeinstellungsrolle

  10. Um die Tests remote auszuführen oder um die Tests remote auszuführen und Daten remote zu sammeln, wählen Sie im Dropdownelement Testausführungsmethode die Option Remoteausführung aus.

  11. Wählen Sie mit dem Dropdownelement Controller unter Controller einen Testcontroller für die Test-Agents aus, der verwendet wird, um die Tests auszuführen oder Daten zu sammeln.

    Tipp

    Wenn Sie zum ersten Mal einen Controller hinzufügen, enthält die Dropdownliste keine Controller. Die Liste wird mit vorherigen Controllern aufgefüllt, die Sie in anderen Testeinstellungen angegeben haben. Sie müssen den Namen des Controllers im Feld eingeben (z. B. TestControllerMachine1).

    Weitere Informationen finden Sie unter Konfigurieren von Testcontrollern und Test-Agents für Auslastungstests und Verwenden von Testcontrollern und Test-Agents mit Auslastungstests.

  12. Zum Hinzufügen der Rollen, mit denen Sie Tests ausführen und Daten sammeln möchten, klicken Sie unter Roles auf Hinzufügen.

  13. Geben Sie in der Spalte Name einen Namen für die Rolle ein. Die Rolle kann z. B. "Webserver" sein.

  14. Wiederholen Sie die Schritte 12 und 13, um alle erforderlichen Rollen hinzuzufügen.

    Jede Rolle verwendet einen Test-Agent, der vom Testcontroller verwaltet wird.

  15. Wählen Sie die Rolle aus, mit der Sie die Tests ausführen möchten, und klicken Sie auf Als Rolle zum Ausführen von Tests festlegen.

    Wichtig

    Die anderen erstellten und definierten Rollen führen keine Tests aus, sondern werden nur für die Datenerfassung gemäß den für die Rollen auf der Seite Daten und Diagnosen angegebenen Datenadaptern und Adaptern für diagnostische Daten verwendet.

  16. Wenn Sie die Agents einschränken möchten, die für eine Rolle verwendet werden können, wählen Sie die Rolle aus, und klicken Sie dann auf der Symbolleiste unter Agentattribute für ausgewählte Rolle auf Hinzufügen.

    Das Dialogfeld Agent-Auswahlregel wird angezeigt.

    Geben Sie den Namen unter Attributname und den Wert unter Attributwert ein, und klicken Sie dann auf OK. Fügen Sie so viele Attribute hinzu, wie Sie benötigen.

    Sie können z. B. ein Attribut mit dem Namen "RAM > 16GB" hinzufügen, das über den Wert "True" oder "False" verfügt, um nach Test-Agent-Computern mit mehr als 16 GB Arbeitsspeicher zu filtern. Wenden Sie mithilfe des Dialogfelds "Testcontroller verwalten" dasselbe Attribut auf mehrere Test-Agents an. Weitere Informationen finden Sie unter Verwalten von Testcontrollern und Test-Agents.

  17. Klicken Sie auf Daten und Diagnose.

    Die Seite Daten und Diagnose wird angezeigt.

    Testeinstellungsdaten und -diagnose

  18. Auf der Seite Daten und Diagnosen definieren Sie, was die Rolle bewirkt, indem Sie die von der Rolle für die Datensammlung verwendeten Adapter für diagnostische Daten auswählen. Wenn mindestens ein Adapter für diagnostische Daten oder Datenadapter für die Rolle aktiviert ist, wird vom Testcontroller daher ein verfügbarer Test-Agent-Computer zur Datenerfassung für die angegebenen Datenadapter und Adapter für diagnostische Daten basierend auf den für die Rolle festgelegten Attributen ausgewählt. Zur Auswahl der Datenadapter und Adapter für diagnostische Daten, die Sie für jede Rolle sammeln möchten, wählen Sie die Rolle aus. Wählen Sie für jede Rolle die Adapter für diagnostische Daten gemäß den Anforderungen der Tests aus. Zur Konfiguration der einzelnen Diagnosedatenadapter, die Sie für jede Rolle ausgewählt haben, klicken Sie auf Konfigurieren.

    Beispiel für Rollen und Adapter für diagnostische Daten:

    Sie können z. B. eine Clientrolle mit dem Namen "Desktopclient" erstellen, deren Attribut "Verwendet SQL" auf "True" festgelegt ist, sowie eine Serverrolle mit dem Namen "SQL Server", die über ein auf "RAM > 16GB" festgelegtes Attribut verfügt. Wenn Sie durch Aktivieren von Als Rolle zum Ausführen von Tests festlegen auf der Seite Rollen angeben, dass die Tests von "Desktopclient" ausgeführt werden, werden vom Testcontroller Computer mit Test-Agents ausgewählt, die das auf "True" gesetzte Attribut "Verwendet SQL" enthalten, um auf ihnen die Tests auszuführen. Der Testcontroller wählt auch SQL Server-Computer mit Test-Agents aus, die nur das Attribut "RAM > 16GB" enthalten, um Daten anhand der in der Rolle enthaltenen Datenadapter und Adapter für diagnostische Daten zu erfassen. Der Test-Agent "Desktopclient" kann außerdem Daten für die Computer sammeln, auf denen er ausgeführt wird, wenn Sie auch für diese Rolle Datenadapter und Adapter für diagnostische Daten auswählen.

    Ausführliche Informationen zu den einzelnen Diagnosedatenadaptern und deren Konfiguration finden Sie im entsprechenden Thema in der folgenden Tabelle.

    Weitere Informationen zu Adaptern für diagnostische Daten finden Sie unter Einrichten von Computern und Sammeln von Diagnoseinformationen mithilfe von Testeinstellungen.

    Adapter für diagnostische Daten für Auslastungstests

    Diagnosedatenadapter

    Verwendung in Auslastungstests

    Entsprechendes Thema

    ASP.NET-Clientproxy für IntelliTrace und Testauswirkung: Dieser Proxy ermöglicht das Erfassen von Informationen zu HTTP-Aufrufen von einem Client an einen Webserver für die IntelliTrace- und Testauswirkungsadapter für diagnostische Daten.

    InformationSymbol-Bildschirmabbildung

    Schließen Sie diesen Adapter nur ein, wenn Sie Systeminformationen für die Test-Agent-Computer sammeln müssen.

    WarnhinweisVorsicht
    Es wird davon abgeraten, den IntelliTrace-Adapter in Auslastungstests zu verwenden, da aufgrund der großen gesammelten Datenmenge Probleme auftreten.

    Bei Verwendung von Auslastungstests werden keine Testauswirkungsdaten erfasst.

    IntelliTrace: Sie können konfigurieren, welche speziellen Informationen zur Diagnoseablaufverfolgung in einer Protokolldatei gespeichert werden. Eine Protokolldatei hat die Erweiterung tdlog. Wenn Sie den Test ausführen und ein Testschritt fehlschlägt, können Sie einen Fehler erstellen. Die Protokolldatei, die die Diagnoseablaufverfolgung enthält, wird automatisch an diesen Fehler angefügt. Die in der Protokolldatei gesammelten Daten steigern die Debuggingproduktivität, da sie die Zeit für das Reproduzieren und Diagnostizieren eines Fehlers im Code verkürzen. Aus dieser Protokolldatei kann die lokale Sitzung auf einem anderen Computer erneut erstellt werden. So wird die Wahrscheinlichkeit verringert, dass ein Fehler nicht reproduziert werden kann.

    Weitere Informationen finden Sie unter Debuggen mit IntelliTrace.

    ExclamationSymbol-Bildschirmabbildung

    Es wird davon abgeraten, den IntelliTrace-Adapter in Auslastungstests zu verwenden, da aufgrund der großen gesammelten und protokollierten Datenmenge Probleme auftreten. Sie sollten versuchen, den IntelliTrace-Adapter nur in kurzen Auslastungstests zu verwenden, in denen wenige Test-Agents verwendet werden.

    Gewusst wie: Sammeln von IntelliTrace-Daten zum Beheben schwieriger Probleme

    ASP.NET-Profiler: Sie können eine Testeinstellung erstellen, die die ASP.NET-Profilerstellung umfasst, und so Leistungsdaten zu ASP.NET-Webanwendungen sammeln.

    Thema ist vorhanden

    Der Adapter für diagnostische Daten des ASP.NET-Profilers erstellt ein Profil des Internet Information Server (IIS)-Prozesses. Daher kann er nicht für Entwicklungswebserver verwendet werden. Um ein Profil der Website im Auslastungstest zu erstellen, müssen Sie einen Test-Agent auf dem Computer installieren, auf dem IIS ausgeführt wird. Der Test-Agent generiert keine Auslastung, sondert dient nur als Datensammlungs-Agent. Weitere Informationen finden Sie unter Installing and Configuring Visual Studio Agents and Test and Build Controllers.

    How to: Configure ASP.NET Profiler for Load Tests Using Test Settings

    How to: Run a Load Test Containing Web Performance Tests that Collects ASP.NET Profiler Data

    Codeabdeckung: Sie können eine Testeinstellung erstellen, die Informationen zur Codeabdeckung umfasst. Damit können Sie prüfen, welcher Anteil des Codes durch Tests abgedeckt wird.

    ExclamationSymbol-Bildschirmabbildung

    Auch wenn Sie den Codeabdeckungsadapter in Auslastungstests verwenden können, erfasst er Codeabdeckungsdaten nur in Testausführungsrollen und nicht in Serverrollen, die in der Testeinstellung angegeben werden.

    Gewusst wie: Konfigurieren von Codeabdeckung mithilfe von Testeinstellungen für automatisierte Tests

    Ereignisprotokoll: Sie können eine Testeinstellung konfigurieren, um das Ereignisprotokoll zu erfassen und in die Testergebnisse aufzunehmen.

    Thema ist vorhanden

    Gewusst wie: Konfigurieren der Ereignisprotokollauflistung mithilfe von Testeinstellungen

    Netzwerkemulation: Sie können mit einer Testeinstellung angeben, dass Sie eine künstliche Netzwerklast auf den Test anwenden möchten. Die Netzwerkemulation wirkt sich auf die Kommunikation vom und zum Computer aus, indem eine bestimmte Netzwerkverbindungsgeschwindigkeit, z. B. DFÜ, emuliert wird.

    HinweisHinweis
    Die Netzwerkemulation kann nicht verwendet werden, um die Netzwerkverbindungsgeschwindigkeit zu erhöhen.
    Thema ist nicht vorhanden

    Der Netzwerkemulationsadapter wird von Auslastungstests ignoriert. Stattdessen verwenden Auslastungstests die Einstellungen, die in der Netzwerkmischung des Auslastungstestszenarios angegeben sind.

    Weitere Informationen finden Sie unter Angeben von virtuellen Netzwerktypen in einem Auslastungstestszenario.

    Systeminformationen: Eine Testeinstellung kann so eingerichtet werden, dass sie die Systeminformationen zu den Computern einschließt, auf denen die Systeminformationsdiagnose und der Datensammler ausgeführt werden. Die Systeminformationen werden in den Testergebnissen mit einer Testeinstellung angegeben.

    InformationSymbol-Bildschirmabbildung

    Sie können Systeminformationen sowohl für die Auslastungs-Agents als auch für das getestete System sammeln.

    Zur Erfassung dieser Informationen ist keine Konfiguration erforderlich.

    Testauswirkungen: Sie können Informationen zu den Methoden des Anwendungscodes erfassen, die beim Ausführen eines Testfalls verwendet wurden. Diese können zusammen mit von Entwicklern am Anwendungscode vorgenommenen Änderungen verwendet werden, um zu ermitteln, auf welche Tests sich diese Entwicklungsänderungen ausgewirkt haben.

    Thema ist nicht vorhanden

    Bei Auslastungstests werden keine Testauswirkungsdaten erfasst.

    Videorekorder: Sie können beim Ausführen eines automatisierten Tests eine Videoaufzeichnung der Desktopsitzung erstellen. Dies kann nützlich sein, um die Benutzeraktionen für einen Test der codierten UI zu sehen. Das Video kann anderen Teammitgliedern helfen, Anwendungsprobleme zu isolieren, die schwer reproduzierbar sind.

    HinweisHinweis
    Bei der Remoteausführung von Tests funktioniert die Videoaufzeichnung nicht, wenn der Agent nicht im interaktiven Prozessmodus ausgeführt wird.
    ExclamationSymbol-Bildschirmabbildung
    WarnhinweisVorsicht
    Es wird davon abgeraten, den Videoaufzeichnungsadapter für Auslastungstests zu verwenden.

    Gewusst wie: Erstellen einer Videoaufzeichnung des Desktops beim Ausführen von Tests mithilfe von Testeinstellungen

  19. Klicken Sie auf Bereitstellung.

    Die Seite Bereitstellung wird angezeigt.

  20. Wenn bei jeder Testausführung ein separates Verzeichnis für die Bereitstellung erstellt werden soll, aktivieren Sie Bereitstellung aktivieren.

    Tipp

    In diesem Fall können Sie weiterhin an der Erstellung der Anwendung arbeiten, während die Tests ausgeführt werden.

  21. Um dem Verzeichnis zum Ausführen der Tests eine Datei hinzuzufügen, klicken Sie auf Datei hinzufügen und wählen dann die Datei aus, die Sie hinzufügen möchten.

    Tipp

    Wenn Sie Auslastungstests ausführen, werden Plug-In-Assemblys, Datendateien und hochgeladene Dateien automatisch bereitgestellt.

  22. Um dem Verzeichnis zum Ausführen der Tests ein Verzeichnis hinzuzufügen, klicken Sie auf Verzeichnis hinzufügen und wählen dann das Verzeichnis aus, das Sie hinzufügen möchten.

    Tipp

    Weitere Informationen zum Bereitstellen von Dateien und Verzeichnissen für einzelne Tests mit Eigenschaften und dem DeploymentItem-Attribut finden Sie unter Gewusst wie: Konfigurieren der Testbereitstellung.

  23. Um vor und nach dem Ausführen von Tests Skripts auszuführen, klicken Sie auf Setup- und Bereinigungsskripts.

    Die Seite Setup- und Bereinigungsskripts wird angezeigt.

    1. Geben Sie den Speicherort der Skriptdatei unter Setupskript ein, oder klicken Sie auf die Auslassungspunkte (), um das Setupskript zu suchen.

    2. Geben Sie den Speicherort der Skriptdatei unter Bereinigungsskript ein, oder klicken Sie auf die Auslassungspunkte (), um das Bereinigungsskript zu suchen.

  24. Um die Tests mithilfe eines anderen Hosts auszuführen, klicken Sie auf Hosts.

    1. Stellen Sie sicher, dass unter Hosttyp die Option Standard ausgewählt ist.

      Tipp

      Die Option ASP.NET für Hosttyp wird in Auslastungstests nicht unterstützt.

    2. Wählen Sie mithilfe der Option "Tests als 32-Bit- oder 64-Bit-Prozess ausführen" aus, ob Sie die Webleistungs- und Komponententests in den Auslastungstests als 32-Bit- oder 64-Bit-Prozesse ausführen möchten.

      Tipp

      Maximale Flexibilität erhalten Sie, wenn Sie die Testprojekte mit der Konfiguration Any CPU kompilieren. Die Ausführung ist dann sowohl auf 32- als auch auf 64-Bit-Agents möglich. Das Kompilieren von Testprojekten mit der 64-Bit-Konfiguration bietet keinen Vorteil.

  25. (Optional) Zur Begrenzung der Dauer jedes Testlaufs und der einzelnen Tests klicken Sie auf Test-Timeouts.

    1. Um einen Testlauf bei Überschreitung eines Zeitlimits abzubrechen, wählen Sie Testlauf abbrechen, wenn die gesamte Zeitdauer folgenden Wert überschreitet aus und geben einen Wert für die Zeitdauer ein.

    2. Wenn ein einzelner Test bei Überschreitung eines Zeitlimits fehlschlagen soll, wählen Sie Einzelnen Test als gescheitert markieren, wenn die Ausführungszeit folgenden Wert überschreitet aus und geben einen Wert für diese Zeitdauer ein.

  26. Überspringen Sie Komponententest. Diese Einstellungen werden von Auslastungstests nicht verwendet.

  27. Überspringen Sie Webtest. Diese Einstellungen werden von Auslastungstests nicht verwendet.

  28. Zum Speichern der Testeinstellungen klicken Sie auf Speichern unter. Geben Sie unter Objektname den gewünschten Namen für die Datei ein.

    Tipp

    Wenn Sie die Testeinstellungen ändern müssen, klicken Sie auf Test und dann auf Testeinstellungen bearbeiten, und zeigen Sie auf die Testeinstellungen, die Sie erstellt haben. Weitere Informationen finden Sie unter Gewusst wie: Bearbeiten einer vorhandenen Testeinstellung für einen Testplan.

So entfernen Sie Testeinstellungen aus der Projektmappe

  • Klicken Sie im Ordner Projektmappenelemente mit der rechten Maustaste auf die zu entfernenden Testeinstellungen, und klicken Sie dann auf Entfernen.

    Die Testeinstellungsdatei wird aus der Projektmappe entfernt. Diese Änderung wirkt sich im Menü Test auf die Auswahlmöglichkeiten für die Optionen Aktive Testeinstellungen auswählen und Testeinstellungen bearbeiten aus.

Siehe auch

Aufgaben

How to: Run a Load Test Using Test Controllers and Test Agents Specified in a Test Setting

Konzepte

Einrichten von Computern und Sammeln von Diagnoseinformationen mithilfe von Testeinstellungen

Weitere Ressourcen

Erstellen von Testeinstellungen zum Ausführen von automatisierten Tests in Visual Studio

Verteilen von Auslastungstests auf mehrere Testcomputer mithilfe von Testcontrollern und Test-Agents

Walkthrough: Using a Test Controller and Test Agents in a Load Test