2014-12-03 2 views
0

Jeneter에서 나중에 실행해야하는 JMeter 스크립트를 만들었습니다.Batch 파일 (beanshell sampler에서 호출 됨)에서 ServerAgent를 Jmeter 스레드 그룹으로 보냄

첫 번째 스크립트에서는 ServerAgent를 시작하여 나중에 서버에서 PerfMon 메트릭을 가져 오기 위해 1 명의 사용자, 1 루프 및 Beanshell 샘플러가있는 스레드 그룹을 추가합니다.

내가 추가 한으로 Beanshell 샘플러에서

:

plink -v -ssh <username>@<host> -pw <password> -m D:\AppServer\commands.sh > D:\AppServer\outputlog.txt 

commands.sh 파일에 내가 가진 : 배치 파일 (AppServer.bat) 나는 다음이 내부

Runtime.getRuntime().exec("C:/Windows/System32/cmd.exe /c D:/AppServer/AppServer.bat"); 

#!/bin/bash 
cd /ServerAgent-2.2.1 
./startAgent.sh --udp-port 0 --sysinfo --auto-shutdown 

두 번째 트레드 그룹 (여러 사용자와 루프를 영원히 10 분)은 기록 된 테스트 단계이며 세 번째 트레드 그룹 (1 사용자, 1 루프)에는 PerfMon 리스너 만 있습니다.

문제

내가 같은 시간에 시작하는 모든 스레드와 같은 테스트 솔기를 실행하고있어이 서버에 연결할 수있는 충분한 시간이 아니다 그래서 성능 모니터링 메트릭이 표시되지 않습니다 (Connection refused: connect) .

내가

을 시도했습니다 내가 뭘 타이머 설정 스레드 그룹과 두 번째와 세 번째 스레드 그룹에 대한 설정을 지연 시도했지만 나는 해결책을 찾을 수 없습니다. 박쥐 파일이 작동 중입니다. 다른 트레드 그룹을 사용하지 않도록 설정하고 서버에 성공적으로 연결되었습니다.

다른 접근 방식을 시도했습니다. 첫 번째 트레드 그룹을 하나의 .jmx 테스트와 다른 두 개의 스레드 그룹을 다른 테스트로 분할했습니다. Jenkins에서는 두 가지 Build Steps가 있습니다.

jmeter -n -t D:/SearchOrder/AppServerStart.jmx 

가 그럼 난 성능 모니터 테스트 스크립트를 시작하는 Ant 빌드 파일을 호출 할 젠킨스의 다른 빌드 단계를 추가했습니다 : 첫 번째 빌드 단계에서 나는 윈도우 배치 명령을 실행해야합니다.
콘솔 출력 :

... 
Executing test plan: D:\SearchOrder\AppServerStart.jmx ==> D:\SearchOrder\OrderSearch.jtl 
Created the tree successfully using D:\SearchOrder\AppServerStart.jmx 
Starting the test @ Wed Dec 03 04:52:25 PST 2014 (1417611145595) 
Waiting for possible shutdown message on port 4445 
Tidying up ... @ Wed Dec 03 04:52:25 PST 2014 (1417611145847) 
... end of run 
Executing test plan: D:\SearchOrder\OrderSearch.jmx ==> D:\SearchOrder\OrderSearch.jtl 
Created the tree successfully using D:\SearchOrder\OrderSearch.jmx 
Starting the test @ Wed Dec 03 04:52:27 PST 2014 (1417611147067) 
Waiting for possible shutdown message on port 4445_ 
... 

빌드가 잇달아 시작하고 서버가 다른 빌드 단계 하나에서, 그 이초에서 시작되지 않습니다.

비슷한 경험이 있거나 문제를 해결하는 방법에 대한 조언이있는 사람이 있습니까?

답변

0

정말로 서버 에이전트에 연결할 수 있습니까?

telnet localhost <portNumber> 

성공적인 연결이 테스트 키 입력에 의해 확인 될 수있다 시도 응답은 응하여야한다. 또는 메트릭 조회하여

metrics:cpu 

13.451776649746192 
11.688311688311689 
12.071156289707751 
16.64564943253468 
처럼 보일 것이다
관련 문제