Como pode um webtest ser feita para aceitar transferências de ficheiros?
Pergunta
Estou usando o Visual Studio Team Foundation Server 2008 Team Suite para criar uma webtest para um site. Em algumas páginas a resposta é um download de arquivo (normalmente um PDF), e eu só precisa de teste que a resposta vem de volta com o código de status direita e tipo de conteúdo, ignorando o corpo. Quando eu executar o webtest no Visual Studio, ou executar o teste compilado com MSTest e carregar os resultados, esses pedidos falhar, fazendo com que todo o webtest a falhar.
O guia Navegador Web dos resultados do teste tem o texto:
Request failed: Unable to read data from the transport connection: The connection was closed.
E a guia Detalhes contém a exceção:
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)
A resposta guia mostra uma resposta bem sucedida, com cabeçalhos incluindo "HTTP / 1.1 200 OK" e "Content-Type: application / pdf"., E o conteúdo PDF no corpo
Como posso fazer o webtest aceitar PDFs ou outros tipos de arquivos para esses pedidos?
Solução
Há um erro no Visual Studio Team System 2008 SP1 que mostra esses sintomas. Tente instalar o hot fix para ele. Mais detalhes aqui: http://kbalertz.com/972678/successfully gravados como-Visual-Studio-System-autenticação redirecionada-Logon.aspx
Outras dicas
soa como um problema com o navegador para ser honesto, use o tipo / desconhecido para forçar um Salvar como no cliente em vez de navegador padrão do cliente tentar exibi-lo.