2012-07-06 4 views
0

웹 응용 프로그램을 테스트하고 있습니다. 모든 http 요청 및 응답을 기록하고 싶습니다. 어떻게해야합니까?
"" ". GET COPSApp (요청 1501)" ""
결과 = request1501.GET ('
난 그냥그라인더 로그인

로그 = grinder.logger.info
데프 사이로 올립니다 (자신을) 쓰고 있어요/webdynpro/call_agent_dtop-login_wd/COPSApp ')
로그 ("----------------------------------- ")
반환 결과 것은

하지만 로깅되지 않습니다. 내가

덕분에 많은

답변

1

는 분쇄기 정상적으로 HTTP 요청을 모두 기록합니다 요청 로깅에 로그인하기 위해 어떻게해야합니까 것. 따라서 최소한 요청 로깅의 경우 기본 동작만으로 충분할 수 있습니다.

<hostname>-0.log 

과 같은 이름의 로그 파일을 찾으십시오.이 파일에는 요청과 서버 응답 코드가 표시됩니다.

코드에서 HTTP 요청을 명시 적으로 기록하려면 현재 사용중인 것과 약간 다른 패턴을 사용해야합니다.

request1501.setUrl('/webdynpro/call_agent_dtop-login_wd/COPSApp') 
    response1501=request1501.GET() 
    log(request1501.getUrl()) 

응답 로깅

HTTP 응답을 기록, 당신은 몸과 별도로 헤더를 처리 할 필요가있다. 위의 코드 예제를 바탕으로,이 같은 몸을 로그인 할 수 있습니다 :

몇 가지 방법이 있습니다
log(response1501.getText()) 

당신은 HTTP 응답 헤더를 기록 할 수 있습니다. ,

log(response1501.toString()) 

로깅 HTTP 응답 헤더에 대한 다른 옵션의 아이디어를 얻으려면, 그리고 여러 가지가 별도로 액세스 할 수있는 가장 쉬운 방법은 다음과 같이 하나의 문에서 로그에 모두 덤프하는 것 여기에 대한 HttpResponse API 참조 : 귀하의 질문에

http://grinder.sourceforge.net/g3/script-javadoc/HTTPClient/HTTPResponse.html

로그인

을, 당신은 또한 요청 "무엇을 은 내가 D 필요 o에 로그인하십시오. " 나는 이것이 오식이라고 가정하고, 당신이 정말로 의미하는 것은 당신이 어떻게 물건을 로그에 쓰는가라는 것입니다. 실제 로그인을하려면 일반적으로 HTTP 게시물을 통해 사용자 이름과 비밀번호를 제출해야합니다. 분쇄기로 쉽게이 작업을 수행 할 수 있지만 해당 주제는 별도의 질문으로 처리해야합니다.

+0

답장을 보내 주셔서 감사합니다. 답변을 통해 여러 가지를 알게되었지만, 여전히 내 이름 등의 간단한 텍스트라도 로그 할 수없는 문제에 직면하고 있습니다. * log = grinder.logger.info * i have log 내 시작에서 이것을 wiritten.py 파일 과 * log ("-----------------------------------") *를 쓰는 것보다 방법. 일부 패키지 또는 sth을 가져와야합니까? 난 그냥 함수의 일부 호출에 간단한 텍스트를 기록하고 싶습니다. 덕분에 많은 – Arvind

+0

그리고 내 평 파일은 net.grinder.script.Grinder 가져 오기 분쇄기 net.grinder.plugin.http 수입에서
HTTPPluginControl,
의 HTTPRequest
에서 net.grinder.script 수입 테스트
에서
시작 에서 세션 객체 수입하는 NVPair
connectionDefaults HTTPPluginControl.getConnectionDefaults =()
httpUtilities HTTPPluginControl.getHTTPUtilities =()
Arvind

+0

이 가능 로그 출력을 제어하고 예를 들어, 분쇄기에 로그를 갖고 (디버깅 목적) 인 ' .log'항상 표시 되나요? – mark