2017-12-18 7 views
0

내가 원하는 것의 컨텍스트를 제공하기 위해서 :JMeter JavaSampler : 외부 항아리에서 메소드를 호출하는 방법?

내 기능 테스트 팀은 REST 아키텍처를 기반으로하는 HTTP 호출로 구성된 Java 라이브러리가 있습니다. 기본적으로 항아리를 다시 사용하고 더 높은 동시성으로 메소드를 호출하려고합니다. JMeter의 JavaSampler를 사용하여 이것이 어떻게 달성 될 수 있는지 알고 싶었습니다.

예 : 100 사용자 로그인 및 로그 아웃 테스트를하고 내 jar가 로그인 및 로그 아웃 기능을 제공한다고 가정하면 어떻게 테스트 할 수 있습니까? 이 문제를 해결하기위한 모든 포인터는 시작하는 데 매우 도움이 될 것입니다.

답변

0

AbstractJavaSamplerClient을 구현하는 클래스를 만들고 runTest() 메소드에 코드를 작성해야합니다.

JavaSamplerClient의 runTest() 메소드에는 기본 구현이 없으므로 하위 클래스는 적어도이 메소드를 정의해야합니다.

0

jmeter 폴더 내의 lib 폴더에 jar 파일을 넣습니다.

해당 클래스를 가져 와서 다시 시도하십시오.

0

옵션 1 - Groovy

  1. JMeter Classpath에 어딘가에 기능을 구현 병 (들)을 추가하여
  2. 다시 시작 JMeter를 만들, 테스트 계획에 JSR223 Sampler 추가
  3. 그들을 데리러 언어로 groovy을 선택하고 Cache compiled script if available 상자가 선택되어 있는지 확인하십시오.
  4. 원하는 코드 넣기 "스크립트"영역으로 병렬로 실행하고 JMeter Thread Group을 사용하여 동시성을 설정하십시오.

옵션 2-Java Request

사용은 JavaSamplerClient 인터페이스를 구현하는 자신의 클래스를 생성하고 setupTest(), getDefaultParameters 특히 runTest() 방법 중 자신의 재정의를 만들 수 있습니다. 당신은 참조를 위해 다음과 같은 기존의 클래스를 볼 수 있습니다


옵션 3-jmh

JMH를 사용하여 방금 필요 그렇다면 Java Microbenchmark Harness을 의미합니다 메소드 실행 타이밍을 측정하기 위해 자세한 내용은 Getting Started With JMH 가이드를 확인하십시오.

0

이 BeanShell이다 포스트 프로세서 나를 위해 노력하고 있습니다 (JMeter를 3.2) :

  1. 은 BeanShell이다 스크립트에 lib 디렉토리 \ 내선 폴더에
  2. 다시 시작 JMeter를
  3. 가져 오기 패키지를 외부 jar 파일을 넣어

그런 다음 내 스크립트에서 관련 클래스를 참조 할 수 있습니다.

관련 문제