2014-01-21 3 views
0

JMeter에서 파일 업로드를 포트 8888을 사용하여 기록하려고 시도했지만 JMeter를 프록시 (녹음 컨트롤러 및 HTTP (S) 테스트 스크립트 레코더)로 사용할 때 파일을 업로드하지 못했습니다. 또한 JMeter에서 "시작"을 선택하고보기 결과 트리 리스너에 방금 녹화 한 내용을 표시하여이 작업을 실행하려고했습니다. 이 방법으로 실행했을 때보기 결과 트리 리스너에서 파일 업로드 행에 대해 500 오류가 발생했습니다.JMeter를 사용하여 녹음하는 동안 파일 업로드가 실패 함

그래서 같은 일이 발생했는지 확인하기 위해 파일 업로드를 수행하는 동안 Charles 네트워크 프록시를 실행했습니다. 그렇지 않았습니다. 같은 포트 8888에있는 Charles 네트워크 프록시를 통해 파일을 성공적으로 업로드 할 수있었습니다.

또한 모든 프록시를 제거하고 성공적으로 파일을 업로드했습니다.

프록시로 JMeter를 사용할 때만 파일을 업로드하는 데 문제가 있습니다.

처음에는 JMeter를 변경없이 실행 한 후 Implementation, Content Encoding, Browser-Campatible 헤더, Retrieve All Embedded Resources 및 많은 다른 설정을 변경하여이 작업이 도움이되는지 확인했습니다. 하지 않았다.

그래서 내 직감은 설정이 잘못되었다고 알려줍니다.

HTTP 요청 기본값에서 "Java"를 사용하도록 변경하는 방법에 대해 설명하는이 게시물을 발견했습니다. (Unable to upload image/file when using Jmeter HTTP Proxy server) 이렇게 해보니 도움이되지 못했습니다. 다른 종류의 것을 언급 한이 게시물을 발견했습니다 (Unable to record an upload file scenario in JMeter though it is possible by manual effort with specific browser settings). 나는 찰스를 상대로 헤더를 확인했고 그들은 똑같이 보였다.

아이디어가 있으십니까?

============= 편집 아래의 테스트 계획 스크린 샷 ===============을 추가

Screen shot of test plan

답변

0

그래서 "Path"줄에서 매개 변수를 제거하고 500 오류가 발생한 줄에 대해 "매개 변수와 함께 요청 보내기"로 이동해야했습니다 (화면의 강조 표시된 줄 내가 위에 붙였던 발사).

요약하면 다음과 같습니다. 레코딩 컨트롤러와 HTTP (S) 테스트 스크립트 레코더를 사용하여 JMeter로 파일 업로드를 기록했을 때 JMeter는 JMeter가 기록한 여러 줄에 "Path"필드에 모든 매개 변수를 입력했습니다. 저는 JMeter가 자동으로 저를 위해 한 일에 대해 두 번 생각조차하지 않았습니다. 따라서 "경로"필드에서 "/"를 제외한 모든 텍스트를 제거하고 "매개 변수를 요청과 함께 보내기"아래에 각 매개 변수를 한 번씩 추가 한 후에 나에게 제공 한 줄에 "200"상태 코드를 받았습니다 문제. 나는 또한 모든 다른 행에 들어가서 매개 변수에 대해 이와 동일한 변경을가했습니다. 파일 업로드가 실제로 작동하는지 아직 잘 모르겠지만 문제가 된 줄에서 "200"을 얻은 이후로 지금 당장 걱정하지 않아도됩니다. 그것은 내가 계속 나아갈 수있는 충분한 진전이다 ... :-).

4

녹음하는 동안 업로드 할 파일을 jmeter/bin 폴더에 저장해야합니다.

이것은 전체 경로를 전송하지 않는 브라우저의 몇 가지 제한 사항 때문입니다.

+0

내 오류가 AjaxFileUploadHandler.axd 행에서 수정되었습니다. 하지만, 이제 /? contextKey = .... 행에는 여전히 500 오류가 있습니다. 전에는 파일 경로를 조정하여 파일을 찾기 위해 AjaxFileUploadHandler.axd 행을 수동으로 수정해야했습니다. 이번에는 고칠 필요가 없었습니다.하지만, 나는 같은 줄에 500 줄의 오류가 생겨서 다음 줄에 /? contextkey = ...와 같은 줄이 붙어있다. – toolmania1

+1

그래서 첫 번째 문제를 해결하면/upvote 답을 수락한다. 그럼 또 다른 질문을 시작하고 세부 사항, URL을, Stacktrace .... – pmpm

+0

이것은 내 부분에 오해의 소지가있다. 원래의 문제는 여전히 존재합니다. 나는 AjaxFileUploadHandler 라인에서 500 에러를 경험하지 못했다. 파일을 찾을 수 없습니다. 오류가 발생했습니다. 그러나 필자는 수동으로 파일 경로를 변경하여이 게시물을 시작하기 전에 이미 수정했습니다. 나는이 파일을 찾을 수 없다는 오류에 대한 게시물을 시작하지 않았다. 나는 분명히 당신에게 점수/득표를 줄 것이지만, 여전히 500 오류의 원래 문제가 존재할 때 나는 그것을 지금해야만합니까? – toolmania1

관련 문제