본문 바로가기

728x90

jmeter

[JMeter] BeanShell의 props 기능 JMeter의 BeanShell을 사용하여 부하 테스트를 하던 중 각 스레드별로 평균 응답속도나 오래걸린 패킷과 같은 통계를 내다가 마지막에 전체 스레드에 대한 통계를 내고 싶어져서 알아보니 props를 사용하여 전역 객체를 관리할 수가 있었다. 서블릿의 application 객체처럼 key-value 형식으로 저장이 되는데, 테스트 시작 시에 통계관련 인스턴스를 담아두고, 테스트에 사용되는 스레드들에서 각 스레드별 결과를 수집하며 마지막에 총 집계를 출력하도록 설정하였다. 이를 위해서는 루프를 도는 스레드 그룹에서는 수행할 수 없기 때문에 해당 스레드 그룹을 수행하기 전 setUp 스레드 그룹에서 초기화를 진행하고, 테스트 종료 후 tearDown 스레드 그룹에서 결과를 출력하였다.이렇게 하니 기존에 .. 더보기
Performance, JMeter BeanShell Sampler 다른 bsh 파일 import JMeter에서 한 트랜잭션을 위해 BeanShell 스크립트를 한 곳에만 작성할 수 있기 때문에 다른 파일들에 모듈화를 시키는 방향으로 생각을 하게 되었다. JMeter에서는 ext 폴더에 jar 파일로 만들어 넣어주면 쉽게 import해서 사용할 수 있고, beanshell 자체의 문법으로도 import 할 수 있는 방법이 있었다. ex) path : /home/pat/mycommands/helloWorld.bsh addClassPath(“/home/pat"); importCommands("mycommands"); 참고 : http://www.beanshell.org/manual/commands.html 더보기
Performance, JMeter에서 사용하기 위해 .proto 파일을 java로 출력 JMeter에서 .proto 파일을 사용하기 위해서는 .jar파일로의 변환이 필요하다.먼저 .proto 파일을 .java 코드로 출력한다.import 시 명확하게 사용할 수 있도록 .proto 파일에 패키지 지정을 해준다. option java_package = "com.example.tutorial"; option java_outer_classname = "PersonProtos"; java 코드로 출력 명령 $SRC_DIR : proto 파일 위치 $DST_DIR : 출력 될 위치 protoc -I=$SRC_DIR --java_out=$DST_DIR $SRC_DIR/example.proto 참고 사이트이클립스에서 jar 파일 만들기http://jhoony.tistory.com/entry/%EC%9D%.. 더보기
Performance, JMeter 확장 라이브러리 적용 JMeter 폴더의 lib/ext/ 안에 .jar 형태의 lib 파일을 옮긴 후 JMeter를 재실행 시키면 자동으로 적용된다. 예를 들어 Protocol Buffer를 적용시키고 싶다면 .jar 형태로 된 Protobuf 파일을 ext 폴더에 넣어주면 되고, .proto 형태의 protobuf 파일을 사용하고 싶다면 java형태로 출력한 후 .jar 형태로 변환하여 ext 폴더에 넣어 적용시킬 수 있다. JMeter 확장 plugin을 추가 JMeter에서 기본적으로 제공하는 기능 외에 더 많은 기능을 사용할 수 있다. http://code.google.com/p/jmeter-plugins/downloads/list 더보기
Performance, JMeter BeanShell을 통한 TCP 테스트 첫걸음 2014년 9월 4일 아래 포스팅의 테스트 환경과 동일한 상태에서 TCP Sampler만 추가해서 같은 방식으로 테스트 해 보았다. 우선 33001번으로 Port를 열어놓고 TCP Sampler에 BeanShell PreProcessor에서 값을 대입한 변수를 사용하여 패킷을 전송했다. 서버쪽을 디버깅 해본 결과 정상적으로 변수에 대입된 값이 패킷을 통해 서버로 전송되었다. 인제 서버로 첫 통신에 성공한 것이라서 갈 길이 멀지만 이제 길이 좀 보인다! 앞으로는 Test Plan에 따른 JMeter 셋팅과 BeanShell 에 Protocol Buffer를 적용시켜보고 조금 더 자세히 들여다 봐야겠다. 더보기
Performance, JMeter BeanShell 첫 시도 2014년 9월 4일 참고 사이트 : http://testeverythingqtp.blogspot.kr/2013/01/jmeter-bean-shell-script-create-file.html 위 사이트의 포스팅을 보고 그대로 따라해봤고 그 결과를 나름대로 정리해보았다. 먼저 Thread Group을 생성하여 쓰레드, 간격, 루프 수 등을 지정한다. 해당 포스팅에서는 "Counter"를 사용하였는데, 반복하여 실행 될때마다 카운트가 하나씩 증가한다. 최소/최대치를 지정해놓을 수 있다. Format은 숫자가 출력될 양식인데 00일 경우에 1은 01, 2는 02 이런식으로 두자리수가 출력된다. Reference Name은 BeanShell 스크립트에서 이 Reference Name을 통해 Counter에 접.. 더보기
Performance, JMeter 설치 및 환경 셋팅 JMeter 설치 및 실행 JMeter : http://jmeter.apache.org/download_jmeter.cgi 소스로 다운로드 빌드 : http://ant.apache.org/bindownload.cgi JMeter 소스를 빌드 하기 위해 필요 다운로드 후 JMeter 소스 폴더에서 ant download-jars를 해줘야 lib폴더에 lib 파일들이 다운로드 된다. 참고 : http://blog.daum.net/jacojang/16335003 빌드 명령 ant -buildfile build.xml (JMeter 폴더) ant install JMeter 실행 : bin 폴더의 jmeter파일에 실행 권한이 빠져있으므로 권한 부여 후에 실행 JMeter 개발 환경 구축 java에서 구글 프로토.. 더보기

728x90