2013-12-17 1 views
0

저는 자동화 된 성능 테스트를 작성하기 위해 JMeter을 사용하려고했습니다. 사람들이 테스트를 실행하고 결과를 볼 수 있도록 Jenkins에서 작업을 설정하고 있습니다.표현식을 사용하여 JMeter에서 사용자 정의 변수를 만들 수 있습니까?

스레드 그룹에서 사용할 수있는 옵션에 해당하는 몇 가지 매개 변수를 작업에 추가하려고합니다. 그들은 : 사용자의

  • 수는
  • 램프 업 (ramp-up) 기간
  • 루프

어떤 사람들은 꽤 나는 '램프 업 기간'의 개념을 이렇게 대신 이해하지 못하는 계산 'Delay'로 참조하고 테스트를 시작하기 전에 각 스레드가 대기하는 시간을 제어하는 ​​데 사용하려고합니다. 이것은 '램프 업 기간'이 (사용자 수 x 지연)과 같아야 함을 의미합니다.

내가 테스트를 실행하는 데 사용하고 명령은 다음과 같습니다 :

jmeter -n -t <myscript>.jmx -l results.jtl -j jmeter.log -JUSERS=10 -JDELAY=1 -JLOOPS=1 

과 변수는 다음과 같다 :

USERS = ${__P(USERS)} 
RAMPUP = ${USERS}*${__P(DELAY)} 
LOOPS = ${__P(LOOPS)} 

그러나 불행히도 RAMPUP 변수의 값은 내가 아니었다를 예상했다. "$ {USERS} * 1"이되었습니다.

JMeter에서이 작업을 수행 할 방법이 있습니까?

답변

0

JMeter 변수 및 속성은 문자열이므로 산술 연산을 적용 할 수 없습니다. 당신이 얻는 행동은 절대적으로 기대됩니다. 또한 런타임 중에 속성을 동적으로 변경할 가능성이 없으므로 JMeter에 전달하기 전에 램프 업을 계산해야합니다.

0

계획을 테스트하기 전에 BSF 사전 처리기를 추가하고 사용자 정의 변수의 값을 계산하고 변수에 값을 입력하십시오. putObject(String key,Object value)

관련 문제