2013-10-19 1 views
1

request-limiter (100 초 동안 100requets, 그렇지 않으면 ip가 차단됨)가있는 API의 성능을 테스트 해 봅니다. 사용자 정의 헤더로이를 피할 수 있습니다. 이 헤더의 값은 Java 클래스에 의해 생성됩니다.JMeter : Java 클래스로 맞춤 헤더 값 생성

jruby를 사용하면 "require"와 "import"를 사용하여 클래스를 사용할 수도 있습니다.

어떻게하면 JMeter에서이 작업을 수행 할 수 있습니까?

추가 정보 : 헤더 값은 생성되어야하는 각 요청마다 동적입니다. HttpPwd.genPwd()를 호출하려면 두 개의 * .jar 파일이 필요합니다.

답변

0

이 진행하는 방법입니다 :

  • 이 JMeter를/lib에

  • 사용하십시오 JSR223 처리기에 JMeter를/lib 폴더에

  • 넣어 끝내-all.jar을 2 개 항아리를 넣어 + Groove

import xxxxxx; // 여기서 xxxx는 HttpPwd 클래스의 전체 이름입니다.

vars.put ("header", HttpPwd.genPwd()); 귀하의 요청 자식으로 HeaderManager을 추가하고 컨텐츠 넣어에서 온

  • :

헤더 이름 (나는 그것이 무엇인지 모르는) : $ {헤더}

여기
0

JMeter 프로젝트에서 Thread Group>HTTP Request으로 이동합니다. 요청 매개 변수를 설정할 수 있습니다.

0

는 FOL가 발생하는 것을 가정 JMeter __Beanshell function

을 통해이를 구현하는 방법입니다 사용자 정의 헤더 생성하는 로직을 lowing : "customheader.jar"

라는 일부 항아리에서 액세스 할 수

package custom.header; 

public class HttpPwd { 

public static String getPwd() { 
    return String.valueOf(System.currentTimeMillis()); 
} 
} 

을 그리고 당신은 당신의 요구에 "MyHeader"라는 이름의 헤더를 추가 할

  1. customheader.jat를 jmeter 설치의 lib/ext 폴더에 넣으십시오.
  2. 는 HTTP 요청에서 그룹
  3. 글타래 즉, HTTP 요청을 추가 스레드 그룹
  4. 만들기 (또는 search_paths 또는 user.classpath 아래 위치에 당신이 당신의 user.properties 파일에 이러한 속성을 오버라이드 (override) 한 경우는) 서버 이름이나 넣어 IP가 ie "google"이 될 수 있습니다.co.kr에서 "경로 - 매개 변수 추가 /,와."테스트 ""의 값을 "q는 실제로는 문제가되지 않습니다
  5. HTTP 요청의 자식으로 HTTP 헤더 관리자를 추가
  6. MyHeader과 같은 이름을 추가합니다. 값 - "$ {__ BeanShell이다 (수입 custom.header. *; HttpPwd.getPwd();)}"
  7. 보기 HTTP 요청 후
  8. 저장을 나무 리스너 결과 및 실행 추가

당신이 뭔가를 볼 수 like :

GET http://www.google.com/?q=test 

[no cookies] 

Request Headers: 
Connection: keep-alive 
MyHeader: 1382360571781 
Host: www.google.com 
User-Agent: Apache-HttpClient/4.2.3 (java 1.5) 

MyHeader 미리 알림 및 값 언급