2009-07-01 7 views
1

Ich bin Last testen einen Server, der erfordert, dass ein Benutzer nicht mehr als einmal auf einmal verbunden sein.Virtuelle Benutzer gleichzeitig in VSTS 2008 Load Testing

Wenn ich die VUsers an echte Benutzer binden, wird dies jemals vorkommen, oder kann ich sicher sein, dass dieser VUser nicht wiederverwendet wird, bis die vorherige Iteration abgeschlossen ist?

Antwort

1

Ich habe einen Belastungstest erstellt, um dies zu testen.

Grob:

Method1 { 
    Trace.WriteLine(userId); 
} 

Method2 { 
    Trace.WriteLine(userId + "locked"); 
    Thread.Sleep(5 min); 
} 

diese beiden oben mischen und Sie werden sehen, dass, sobald ein Benutzer-ID in Method2 gesperrt ist, werden Sie nicht sehen es so oder Verfahren treffen erneut für 5 min. Und wenn alle Benutzer gesperrt sind, sitzt der Test einfach, bis einer freigegeben wird.

+0

Wenn auf einem Prüfstand mit mehreren Agenten ausgeführt wird, werden die userIds auf jedem Agenten dupliziert. Das LoadTestContext-Objekt verfügt jedoch über Agenteninformationen (Name, ID, Anzahl) und könnte möglicherweise zum manuellen Zuweisen von userIds verwendet werden. – sroche

0

Sie können den Benutzer festlegen, den der Auslastungstest verbindet, wenn Sie einen codierten Webtest erstellen. Das Hinzufügen von Code, um den Benutzer aus einem Pool zu holen, könnte funktionieren, aber es wäre eine Herausforderung, da der Code, um einen neuen Benutzer zu bekommen, leicht zu einem Flaschenhals werden könnte und sich für Nebenläufigkeits-/Multithreading-Fehler öffnen würde.

Verwandte Themen