Как сделать веб-тест для загрузки файлов?
Вопрос
Я использую Visual Studio Team Foundation Server 2008 Team Suite для создания веб-теста для сайта. На некоторых страницах ответом является загрузка файла (обычно в формате PDF), и мне просто нужно проверить, что ответ возвращается с правильным кодом состояния и типом содержимого, игнорируя тело. Когда я запускаю веб-тестирование в Visual Studio или запускаю скомпилированный тест с помощью MSTest и загружаю результаты, эти запросы не выполняются, что приводит к сбою всего веб-теста.
На вкладке «Веб-браузер» результатов теста есть текст:
Request failed: Unable to read data from the transport connection: The connection was closed.
А на вкладке Сведения содержится исключение:
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)
На вкладке «Ответ» отображается успешный ответ с заголовками, включая «HTTP / 1.1 200 OK». и " Content-Type: application / pdf " и содержимое PDF в теле.
Как я могу заставить веб-тест принимать PDF-файлы или файлы других типов для этих запросов?
Решение
В Visual Studio Team System 2008 с пакетом обновления 1 (SP1) есть ошибка, которая показывает такие симптомы. Попробуйте установить исправление для него. Подробнее здесь: http://kbalertz.com/972678/successfully -recorded-видео-Studio-System-аутентификации перенаправлены-logon.aspx
Другие советы
звучит как проблема с браузером, используйте тип / unknown, чтобы принудительно сохранить как на клиенте, вместо того, чтобы браузер по умолчанию клиента пытался его отобразить.