2013-04-19 4 views
5

Gatling을 사용하여 API를 테스트하려고하지만 문제가 있습니다. 지금 로그인/로그 아웃을 테스트하고 있습니다. 로그인시, 사용자는 로그 아웃에 사용되는 토큰을 얻습니다.
레코더를 사용할 때 수정 토큰을 유지하고 물론 테스트를 실행할 때 작동하지 않습니다. 하지만 doc 또는 google에서 동적으로 토큰을 가져올 수있는 방법을 찾지 못했습니다.
아는 사람 있습니까?
감사합니다.Gatling에서 인증 토큰 가져 오기

편집 : 및 ("http://site.com/login")를 .post 후 코드의 두 조각을 넣어하려고

.exec(http("request_13") 
        .get("http://site.com/logout") 
        .headers(headers_13) 
      ) 
     .pause(202 milliseconds) 

... 내가

val headers_13 = Map(
     "Accept" -> """*/*""", 
     "Origin" -> """http://site.com""", 
     "token" -> """token""" 
) 

val scn = scenario("Scenario Name") 
     .exec(http("request_1") 
        .post("http://site.com/login") 
        .headers(headers_1) 
         .param("""player[email]""", """[email protected]""") 
         .param("""player[password]""", """password""") 
      ) 
     .pause(757 milliseconds) 

을 가지고 무엇을 여기에 기록 후. get (" http://site.com/logout")하지만 작동하지 않습니다.

답변

8

토큰? HTTP 헤더입니까? 일반적으로 응답에서 데이터를 저장하여 추가 요청을 위해 데이터를 다시 사용하는 방법은 Check API입니다.

.check(header("tokenName").saveAs("token")  
...  
.header("tokenName", "${token}") 
+0

예, 로그 아웃을위한 HTTP 헤더입니다. 로그인 할 때 json 응답에서 생성됩니다. – Simon

+0

로그인 요청에 대한 확인을 추가하고 결과를 저장 한 다음 로그 아웃 요청에 다시 주입하기 만하면됩니다. 방금 내 대답을 편집했습니다. 알 겠어? –

+0

나는 이것을 시험해 볼 것이다, 고마워! – Simon