2009-05-04 7 views
1

Ich verwende Visual Studio Team Foundation Server 2008 Team Suite, um einen Webtest für eine Website zu erstellen. Auf einigen Seiten ist die Antwort ein Dateidownload (normalerweise ein PDF), und ich muss nur testen, dass die Antwort mit dem richtigen Statuscode und Inhaltstyp zurückkehrt, wobei der Text ignoriert wird. Wenn ich den Webtest in Visual Studio ausführe oder den kompilierten Test mit MSTest ausführe und die Ergebnisse lade, scheitern diese Anforderungen, wodurch der gesamte Webtest fehlschlägt.Wie kann ein Webtest gemacht werden, um Dateidownloads zu akzeptieren?

Der Web-Browser Registerkarte des Testergebnisses hat den Text:

Request failed: Unable to read data from the transport connection: The connection was closed.

Und die Registerkarte Details enthält die Ausnahme:

System.IO.IOException: Unable to read data from the transport connection: The connection was closed. 
    at System.Net.ConnectStream.EndRead(IAsyncResult asyncResult) 
    at Microsoft.VisualStudio.TestTools.WebStress.DataCaptureStream.EndRead(IAsyncResult asyncResult) 
    at Microsoft.VisualStudio.TestTools.WebStress.WebTestTransaction.ReadResponse(IAsyncResult result)

Die Registerkarte Antwort zeigt eine erfolgreiche Antwort, mit Header einschließlich " HTTP/1.1 200 OK "und" Content-Type: application/pdf "und der PDF-Inhalt im Text.

Wie kann ich den Webtest akzeptieren PDFs oder andere Arten von Dateien für diese Anfragen?

+0

Wie groß sind die .pdf Datei Antworten? – agentnega

+0

Ich hoffe, dass, indem Sie hier kommentieren, diese Frage mehr Aufmerksamkeit bekommen wird. Ich habe das fast genau das gleiche Problem wie Tspauld, außer dass der Response-Inhalt application/zip statt pdf ist. Ich habe versucht, das Timeout für den WebTestRequest zu erhöhen und ein PreRequest-Ereignis hinzuzufügen, das die Größe des ResponseBodyCaptureLimit vergrößert. Keines davon hat das Problem verändert, und die Antwort ist etwa 4 Sekunden nach der Anforderung fehlgeschlagen. – Dan

Antwort

3

Es gibt einen Fehler in Visual Studio Team System 2008 SP1, der solche Symptome zeigt. Versuchen Sie, Hotfix dafür zu installieren. Weitere Details hier: http://kbalertz.com/972678/successfully-recorded-Visual-Studio-System-authentication-redirected-logon.aspx

+1

Das war genau das Problem, die Microsoft-Verknüpfung zu dem Hotfix ist http://support.microsoft.com/kb/972678, die ich fast ohne es zu versuchen, weil es über ein Authentifizierungsproblem gesprochen hat. Ich hatte die Dinge nicht als den Download-Teil der Delegierten an SSRS gedacht, die die Authentifizierung über Cookies beibehalten würden, wie der Fehler suggeriert. Patch wurde heute Morgen angewendet und der Webtest läuft nun einwandfrei. Vielen Dank! – Dan

0

klingt wie ein Browser-Problem um ehrlich zu sein, verwenden Sie den Typ/unbekannt, um ein Speichern wie auf dem Client statt des Standardbrowsers des Clients zu versuchen, es anzuzeigen.

+0

Verwirklichen Sie, dass diese Antwort veraltet ist, aber dies wäre kein Browser-Problem. Web-Tests werden in Visual Studio oder einem Load Test-Agenten ausgeführt, es ist kein Browser beteiligt. – Dan