Problembehandlung für Auslastungstests
In diesem Thema sind häufig auftretende Probleme aufgeführt, die beim Arbeiten mit Auslastungstests in Visual Studio Ultimate auftreten.
SQL-Ablaufverfolgung kann nicht verwendet werden
Fehler beim Ausführen des Tests. Auf das Ergebnisrepository des Auslastungstests konnte nicht zugegriffen werden: Ungültiger Objektname 'LoadTestRun'
Fehler LoadTestCounterNotFoundException
LoadTestResultsCollectorSlowException
Fehler LoadTestErrorLimitExceededException
Auf das Ergebnisrepository des Auslastungstests konnte nicht zugegriffen werden
Erwartete Last konnte nicht generiert werden
Beschränkungen der Auslastungsgenerierung auf Multikerncomputern
SQL-Ablaufverfolgung kann nicht verwendet werden
Wenn Sie bei aktivierter SQL-Ablaufverfolgung lokal einen Auslastungstest ausführen, wird möglicherweise die folgende Meldung angezeigt:
Fehler beim Ausführen des Tests. SQL-Ablaufverfolgung konnte nicht gestartet werden: Sie besitzen nicht die Berechtigung zum Ausführen von 'SP_TRACE_CREATE'.
Um die SQL-Ablaufverfolgung in einem Auslastungstest verwenden zu können, der lokal auf einem Computer mit dem Betriebssystem Windows Vista ausgeführt wird, müssen Sie in der entsprechenden Instanz der SQL Server-Ablaufverfolgung Mitglied der Rolle sysadmin sein. Zum Beheben dieses Problems müssen Sie von einem SQL Server-Administrator zur Rolle sysadmin hinzugefügt werden.
Fehler beim Ausführen des Tests.Auf das Ergebnisrepository des Auslastungstests konnte nicht zugegriffen werden: Ungültiger Objektname 'LoadTestRun'.
Dieser Fehler zeigt an, dass das Datenbankschema für den Auslastungstest nicht erstellt wurde. Sie können Query Analyzer zum Erstellen der Datenbank verwenden, indem Sie die Datei LoadTestResultsRepository.Sql ausführen, die sich im Verzeichnis <Visual Studio-Installationsordner>\Common7\IDE befindet.
Wenn Sie SQL Express verwenden, können Sie "sqlcmd -S . \SQLEXPRESS -i loadtestresultsrepository.sql" an einer Eingabeaufforderung in dem zuvor angegebenen Verzeichnis ausführen.
Warnung
Bei den Parametern wird die Groß-/Kleinschreibung beachtet. Schreiben Sie den Buchstaben S groß und i klein.
Weitere Informationen hierzu finden Sie unter Gewusst wie: Erstellen eines Ergebnisrepositorys für Auslastungstests mit SQL.
Fehler LoadTestCounterNotFoundException
Dieser Fehler tritt auf, wenn ein in einem der Indikatorensätze des Auslastungstests enthaltener Leistungsindikator nicht in der Leistungsindikatorkategorie gefunden wird, die ihn enthält. Wenn es sich um einen Indikator handelt, den Sie zum Indikatorensatz hinzugefügt haben, ist der Name möglicherweise falsch geschrieben. Es kann auch sein, dass der Leistungsindikator nicht mehr in der Kategorie vorhanden ist, da er bei einer neueren Revision der Softwarekomponente, die den Leistungsindikator definiert, entfernt wurde. Sie können ihn aus dem Indikatorensatz entfernen, um den Fehler zu beheben, ohne dass benötigte Daten verloren gehen.
Fehler LoadTestResultsCollectorSlowException
Dieser Fehler zeigt an, dass der Testcontroller nicht auf allen Computern Leistungsindikatorergebnisse mit der für den Auslastungstest angegebenen Samplingrate erfassen konnte. Dies kann auftreten, wenn viele Leistungsindikatoren zur Erfassung der Daten einer großen Anzahl von Computern in den Indikatorensatzzuordnungen für den Auslastungstest angegeben sind. Der Fehler kann auch auftreten, wenn der Test-Agent auf dem gleichen Computer wie der Testcontroller ausgeführt wird. Der Fehler kann möglicherweise durch eine Erhöhung der Samplerate für den Auslastungstest behoben werden.
Fehler LoadTestLimitExceededException
Dieser Fehler tritt immer dann auf, wenn 1000 oder mehr Fehler des gleichen Typs auftreten. Dies weist normalerweise darauf hin, dass ein Problem mit einem beim Auslastungstest ausgeführten Test besteht. Wenn z. B. bei einem Webleistungstest Anforderungen an URLs ausgegeben werden, die nicht gefunden werden, korrigieren Sie den Webleistungstest, um diesen Fehler zu beheben.
Auf das Ergebnisrepository des Auslastungstests konnte nicht zugegriffen werden
Bei der Ausführung eines Auslastungstests wird möglicherweise die folgende Meldung angezeigt:
Auf das Ergebnisrepository des Auslastungstests konnte nicht zugegriffen werden
Eine mögliche Ursache für diesen Fehler ist die falsche Verwendung von Groß- und Kleinbuchstaben in Parameternamen, wenn Sie das Befehlszeilenprogramm SQLCMD zum Einrichten des Ergebnisrepositorys für den Auslastungstest verwenden. Der folgende Code enthält einen Beispielbefehl zum Einrichten eines Ergebnisrepositorys für einen Auslastungstest auf einem Server mit dem Namen ContosoServer1:
SQLCMD -S ContosoServer1 -U <user name> -P <password> -i loadtestresultsrepository.sql
Warnung
Bei den Parametern wird die Groß-/Kleinschreibung beachtet. Schreiben Sie die Buchstaben S, U und P groß und den Buchstaben i klein.
Weitere Informationen hierzu finden Sie unter Gewusst wie: Erstellen eines Ergebnisrepositorys für Auslastungstests mit SQL.
Erwartete Last konnte nicht generiert werden
Beim Ausführen eines Auslastungstests tritt häufig das Problem auf, dass die erwartete Last nicht generiert werden kann. In der folgenden Tabelle sind einige mögliche Ursachen für dieses Problem aufgeführt:
Die maximale Auslastung wird durch die Reaktionszeit oder die Anzahl der virtuellen Benutzer beschränkt. |
Wenn die Reaktionszeit aktiviert ist, kann dies die Rate einschränken, in der einzelne virtuelle Benutzer Anforderungen senden können. Bei einer Reaktionszeit von 5 Sekunden pro Anforderung ergeben sich beispielsweise maximal 0,2 Anforderungen pro Sekunde für jeden virtuellen Benutzer. Sie können versuchen, das Problem zu beheben, indem Sie eine der folgenden Änderungen vornehmen:
Vorsicht
Das Deaktivieren der Reaktionszeit kann erhebliche Auswirkungen auf das Testmodul haben. Verringern Sie die Anzahl der virtuellen Benutzer, wenn Sie die Reaktionszeit deaktivieren.
|
Für die Proxyeigenschaft des Webleistungstests wird die Standardeinstellung verwendet. |
Das Verwenden der Standardproxyeinstellung für Webleistungstests stellt eine einfache Methode dar, da Proxyserver automatisch erkannt werden. Die Standardeinstellung für Proxyserver kann jedoch auch Leistungsprobleme bei Auslastungstests verursachen, und der maximale Datendurchsatz verringert sich erheblich. Es wird empfohlen, beim Ausführen eines Auslastungstests keinen Proxyserver zu verwenden. Falls ein Proxyserver erforderlich ist, geben Sie den Namen des Proxyservers anstelle der Standardeinstellung an. |
Anwendungsengpässe |
Sie sollten sich bewusst machen, dass das Auslastungstesttool dazu dient, Engpässe in einer Anwendung zu finden. Wenn Sie über Seiten verfügen, deren Reaktionszeit sich aufgrund von Datenbank- oder CPU-Engpässen verlängert, werden dadurch die Anforderungen pro Sekunde beschränkt, die ein virtueller Benutzer ausgeben kann. Beginnen Sie mit einer geringen Auslastung, und stellen Sie sicher, dass die Reaktionszeit im Rahmen bleibt, während Sie die Last langsam erhöhen. Sie können die Antwortzeitziel-Eigenschaft verwenden, um die maximale erwartete Reaktionszeit für jede Anforderung festzulegen. |
Die CPU, der Arbeitsspeicher oder das Netzwerk des Webservers haben ihre Belastungsgrenze überschritten. |
Wenn die CPU, der Arbeitsspeicher oder das Netzwerk des Webservers ihre Belastungsgrenze überschritten haben, können Sie möglicherweise nicht die gewünschte Auslastung generieren. Möglicherweise haben Sie die Auslastungsgrenze des Servers festgestellt. Sie können die Last für CPU, Arbeitsspeicher oder Netzwerk des Webservers erhöhen. |
Die CPU, der Arbeitsspeicher oder das Netzwerk des Computers, der die Last generiert, haben ihre Belastungsgrenze überschritten. |
Möglicherweise benötigen Sie leistungsfähigere Computer oder mehr Test-Agent-Computer, um die gewünschte Auslastung generieren zu können. |
Die CPU, der Arbeitsspeicher oder das Netzwerk des Datenbankservers (falls zutreffend) haben ihre Belastungsgrenze überschritten. |
Wenn die CPU, der Arbeitsspeicher oder das Netzwerk des Datenbankservers ihre Belastungsgrenze überschritten haben, können Sie möglicherweise nicht die gewünschte Auslastung generieren. Möglicherweise haben Sie die Auslastungsgrenze des Datenbankservers festgestellt. Sie können die Last für CPU, Arbeitsspeicher oder Netzwerk des Datenbankservers erhöhen. |
Beschränkungen der Auslastungsgenerierung auf Multikerncomputern
Wenn Sie Auslastungstests auf Multikern-Computern ausführen, wird die Auslastungsgenerierung wie folgt beschränkt:
Wenn auf dem Computer Visual Studio Ultimate ausgeführt wird, wird die Auslastungsgenerierung auf einen Kern beschränkt.
Wenn der Computer Visual Studio Test Agent ausführt, ist die Auslastungsgenerierung nicht beschränkt, sondern wird auf allen Kernen und Prozessoren ausgeführt.
Siehe auch
Aufgaben
Problembehandlung bei den Testtools für Visual Studio-ALM
Problembehandlung für Webleistungstests
Gewusst wie: Erstellen eines Ergebnisrepositorys für Auslastungstests mit SQL
Konzepte
Strategien für die Problembehandlung bei Testcontrollern und Test-Agents in Auslastungstests
Analyzing Errors in Load Tests Using the Errors Table
Analyzing Threshold Rule Violations in Load Tests Using the Load Test Analyzer
Weitere Ressourcen
Troubleshooting Network Emulation in Load Tests
Problembehandlung für Auslastungs- und Webleistungstests
Verteilen von Auslastungstests auf mehrere Testcomputer mithilfe von Testcontrollern und Test-Agents
Verwalten von Auslastungstestergebnissen im Ergebnisrepository für Auslastungstests