Konfigurieren von Testcontrollern und Test-Agents für Auslastungstests
Veröffentlicht: April 2016
Visual Studio Enterprise kann eine simulierte Auslastung für Ihre App mithilfe von physischen oder virtuellen Computern generieren. Diese Computer müssen als einzelne Testcontroller und Test-Agents eingerichtet werden. Mithilfe des Testcontrollers und der Test-Agents können Sie eine größere Auslastung generieren als mit nur einem Computer.
Sie möchten Ihre Ressourcen nicht verwenden und eigene Computern einrichten, um diese Auslastung zu erstellen? Sie können cloudbasierte Auslastungstests verwenden, um virtuelle Computer in der Cloud bereitzustellen, die die Auslastung vieler Benutzer generieren, die gleichzeitig auf Ihre Website zugreifen. Sie benötigen lediglich ein Visual Studio Online-Konto. Lernen Sie mehr über den cloudbasierten Auslastungstestdienst, der 15.000 kostenlose virtuelle Benutzerminuten an Auslastungstests jeden Monat bereitstellt.
Wenn Sie Auslastungstests für Ihre App mit lokalen Ressourcen durchführen möchten, befolgen Sie die Anweisungen in diesem Thema.
Anforderungen
- Visual Studio Enterprise
Architektur der Auslastungssimulation
Die Architektur der Auslastungssimulation besteht aus einem Visual Studio-Client, einem Testcontroller und Test-Agents.
Mit dem Client werden Tests entwickelt, Tests ausgeführt und Testergebnisse angezeigt.
Mit dem Testcontroller werden die Test-Agents verwaltet und Testergebnisse gesammelt.
Die Test-Agents werden verwendet, um die Tests auszuführen und Daten einschließlich Systeminformationen und ASP.NET-Profilerstellungsdaten zu sammeln, die in der Testeinstellung definiert sind.
Diese Architektur bietet die folgenden Vorteile:
Die Möglichkeit, die Auslastungsgenerierung durch Hinzufügen zusätzlicher Test-Agents zu einem Testcontroller horizontal zu skalieren
Flexibilität für die Installation der Client-, Testcontroller- und Test-Agent-Software auf den gleichen oder anderen Computern. Zum Beispiel:
Lokale Konfiguration:
- Machine1: Visual Studio, Controller, Agent.
Typische Remotekonfiguration:
Machine1 und 2: Visual Studio (ein Controller kann von mehreren Testern verwendet werden).
Machine3: Controller (auf diesem Computer können auch Agents installiert sein)
Machine4-n: Agent oder Agents, die jeweils dem Controller auf Machine3 zugeordnet sind.
Obwohl ein Testcontroller in der Regel mehrere Test-Agents verwaltet, kann ein Agent nur einem einzelnen Controller zugeordnet sein. Jeder Test-Agent kann von einem Team von Entwicklern gemeinsam verwendet werden. Dank dieser Architektur kann die Anzahl der Test-Agents leicht erhöht werden, um größere Auslastungen zu generieren.
Interaktion zwischen Test-Agent und Testcontroller
Der Testcontroller verwaltet zum Ausführen von Tests einen Satz von Test-Agents. Der Testcontroller kommuniziert mit den Test-Agents, um Tests zu starten oder zu beenden, den Test-Agent-Status nachzuverfolgen und Testergebnisse zu sammeln.
Testcontroller
Der Testcontroller stellt eine allgemeine Architektur zum Ausführen von Tests bereit und verfügt über spezielle Funktionen zum Ausführen von Auslastungstests. Der Testcontroller sendet den Auslastungstest an alle Test-Agents und wartet, bis der Test von den Test-Agents initialisiert wurde. Wenn alle Test-Agents bereit sind, sendet der Testcontroller eine Nachricht an die Test-Agents, dass der Test gestartet werden soll.
Test Agent
Der Test-Agent wird als Dienst ausgeführt, der nach Anforderungen des Testcontrollers zum Starten eines neuen Tests lauscht. Wenn der Test-Agent eine Anforderung empfängt, startet der Test-Agent-Dienst einen Prozess zum Ausführen des Tests. Jeder Test-Agent führt den gleichen Auslastungstest aus.
Den Test-Agents wird vom Administrator eine Gewichtung zugewiesen, und die Auslastung wird entsprechend der Gewichtung der Test-Agents verteilt. Wenn z. B. Test-Agent 1 eine Gewichtung von 30 und Test-Agent 2 eine Gewichtung von 70 hat, und die Auslastung auf 1.000 Benutzer festgelegt wurde, werden von Test-Agent 1 300 und von Test-Agent 2 700 virtuelle Benutzer simuliert. Siehe Verwalten von Testcontrollern und Test Agents mit Visual Studio.
Der Test-Agent erhält als Eingabe einen Satz von Tests und einen Satz von Simulationsparametern. Ein Schlüsselkonzept besteht darin, dass Tests von den Computern unabhängig sind, auf denen sie ausgeführt werden.
Testcontroller- und Test-Agent-Verbindungspunkte
In der folgenden Abbildung sind die Verbindungspunkte zwischen Testcontroller, Test-Agent und Client dargestellt. Sie enthält die Ports für eingehende und ausgehende Verbindungen sowie die für diese Ports verwendeten Sicherheitseinschränkungen.
Weitere Informationen finden Sie unter Konfigurieren von Ports für Test Controller und Test Agents.
Installationshinweise für Testcontroller und Test-Agents
Wichtige Informationen zu Hardware- und Softwareanforderungen für Testcontroller und Test-Agents, Verfahren zum Installieren dieser Komponenten und Konfigurieren der Umgebung für optimale Leistung finden Sie unter Installieren und Konfigurieren von Test Agents und Testcontrollern und Testcontroller- und Test Agent-Anforderungen für Auslastungstests.
Verwenden des Testcontrollers und des Test-Agents bei Komponententests
Nachdem Sie einen Testcontroller und mindestens einen Agent installiert haben, können Sie in der Testeinstellung für die Ausführung der Auslastungstests festlegen, ob eine Remoteausführung mit dem Testcontroller erfolgen soll. Darüber hinaus können Sie in der Testeinstellung die Daten- und Diagnoseadapter angeben, die mit der den Agents zugeordneten Rolle verwendet werden sollen. Weitere Informationen finden Sie unter How to: Create a Test Setting for a Distributed Load Test und Einrichten von Computern und Sammeln von Diagnoseinformationen mithilfe von Testeinstellungen.
Siehe auch
[veraltet] Gewusst wie: Ausführen eines Auslastungstests mit Testcontrollern und Test-Agents, die in einer Testeinstellung festgelegt wurden
Gewusst wie: Ausführen eines Test-Controllern und Test-Agents
[veraltet] Webleistungs- und Auslastungstests in Visual Studio
Running Load and Web Performance Tests
Walkthrough: Using a Test Controller and Test Agents in a Load Test
How to: Create a Test Setting for a Distributed Load Test
How to: Access Load Test Results for Analysis
Testcontroller- und Test Agent-Anforderungen für Auslastungstests