반응형

영상 제목: JMeter Full Course Masterclass, Step by Step for Beginners

강사: Raghav Pal (인도 테스트 엔지니어), Automation Step by Step

영상 길이: 3시간 3125

 

https://www.youtube.com/watch?v=SoW2pBak1_Q

위 주소는 Java 기반 오픈 소스 성능 테스트 도구인 JMeter에 대해 설명한 2021년도 교육 영상이다.
3
시간이 넘는 긴 영상이지만 주제별로 모듈화된 강의를 하나로 합친 것이므로, 아래 타임코드를 보고 원하는 내용 부분만 골라 보면 된다.

 


 

타임 코드와 강의 내용

 

[00:00] JMeter에 대한 소개

 

[02:56] 윈도우와 Mac에서 JMeter 설치

 

[10:06] JMeterGUI 둘러보기(Apache JMeter 5.4 사용)

  

[18:36] 첫 번째 JMeter 테스트 생성

  • 스텝 1: JMeter 시작하기
  • 스텝 2: Test Plan 생성하기
  • 스텝 3: Thread Group (Users) 생성하기
  • 스텝 4: Sampler (HTTP Request) 추가하기
  • 스텝 5: Listener 추가하기
  • 스텝 6: 테스트 실행하기

  

[28:58] Listeners

JMeter Listener는 성능 테스트 결과와 메트릭 정보를 수집하여 보고서를 생성하고 보여주는 리포팅(Reporting) 엘리먼트이다. 가장 자주 사용하는 Listener 종류가 아래와 같다.

  • View Results in Table: 테이블 형태로 결과 보기
  • View Results Tree: 트리 형태로 결과 보기
  • Aggregate Report: 샘플들의 평균을 보여주는 종합 리포트
  • Graph Results: 그래프 형태로 결과 보기
  • Summary Report: 요약 보고서
  • Simple Data Writer: 파일명만 써주면 테스트 실행 결과를 csv, xml 같은 외부 파일로 생성함

  

[45:20] Assertions

어써션은 Request/Response를 체크하는 일을 한다(대개는 수신한 Response를 확인함). JMeter가 제공하는 주요 어써션이 아래와 같다.

  • Response Assertion: 가장 자주 사용되는 어써션 타입이다. 예를 들어 응답 코드가 200인지, 응답 메시지에 특정 텍스트가 포함되어 있는지 등을 지정하면, 테스트 실행에서 이 조건이 일치하지 않는 경우 테스트가 실패한다.
  • Duration Assertion: 밀리초 단위로 기간을 지정하면 샘플러가 이 시간을 초과하는 경우 테스트가 실패한다.
  • Size Assertion: 샘플러 크기를 바이트와 비교 연산자로 지정한다. 이 조건을 벗어나는 경우 테스트가 실패한다.
  • HTML Assertion: HTML/XHTML/XML의 표준 포맷 및 신텍스를 위반하면 테스트가 실패한다. 식별된 에러 및 경고를 텍스트 파일로 생성 가능
  • XML Assertion, JSON Assertion: XML 또는 JSON Response를 생성하는 API나 웹서버 시스템에서 사용하는 어써션
  • XPATH Assertion: XML 다큐먼트의 XPATH 유효성 검사

 

[58:46] HTTP(S) Test Script Recorder

브라우저의 HTTP 리퀘스트를 녹화하는 엘리먼트에 대해 설명한다.  

  

[01:14:49] BlazeMeter Recorder

BlazeMeter 레코더를 이용하여 JMeter 테스트를 생성하는 방법을 설명한다(브라우저에 추가된 BlazeMeter 확장 프로그램 활용).

 

[01:23:41] Getting data from CSV file

외부 CSV 파일의 데이터를 JMeter로 가져와서 테스트에 사용하는 법을 설명한다(메뉴의 Config Element - CSV Data Set Config 선택)

 

[01:35:49] Config Elements - HTTP (Web Test Plan)

동일한 레벨에 존재하는 샘플러 리퀘스트에 앞서서 실행되는 엘리먼트이며, 이를 통해 뒤에 샘플러가 사용할 디폴트 및 변수를 셋업한다.

 

[01:47:49] JMeter Config Elements

JMeter에서 주로 사용하는 Config 엘리먼트에 대해 설명한다.
이전 강의에서 CSV HTTP 관련 Config 엘리먼트를 보았고, 이 세션에서는 그 외 것들(: FTP, JDBC, LDAP, TCP)에 대해 다룬다.

 

[01:58:30] Command Line

커맨드라인에서 JMeter 테스트를 실행하고 테스트 결과를 파일로 생성하는 것에 대해 설명한다.

 

[02:10:41] HTML Reports from CMD & GUI

JMeter 대시보드 리포트를 생성하는 방법을 설명한다.

 

[02:32:43] JMeter’s Plugin Manager

JMeter 확장 플러그인을 찾고 설치하는 방법을 설명한다.

 

[02:42:05] REST API Testing in JMeter

JMeter에서 REST API 리퀘스트(GET, POST, PUT, DELETE)를 생성하는 법을 배운다.

 

[03:00:30] SOAP API Testing in JMeter

JMeter에서 SOAP API 리퀘스트를 생성하는 법을 배운다.
(WSDL을 파싱하여 SOAP 메시지를 생성하는 Wizdler 크롬 확장 프로그램 활용)

  

[03:18:26] How to record API in JMeter

위 영상과 별개로 아래 링크를 따라가면 JMeter에서 API 레코딩을 하는 방법에 대한 강의가 있다.

https://bit.ly/3ha5kPu

  

[03:18:28] Functions and Variables

JMeter에서 함수와 변수를 사용하는 법에 대해 설명한다.

  

[03:29:28] Interview FAQs

영상 끝 부분은 테스터 채용 면접에서 자주 등장하는 JMeter에 대한 질문과 그 답을 나열하고 있다. 

  • JMeter 히스토리
  • JMeter가 무엇인가?
  • 누가 개발했는가? - Stefano Mazzocchi
  • JMeter의 기본 동작 원리는?
  • Thread Group이 무엇인가?
  • Sampler가 무엇인가?
  • JMeter 테스트 플랜에서 컴포넌트의 실행 순서는? 1) Configuration elements, 2) Pre-Processors, 3) Timers, 4) Sampler, 5) Post-Processors, 6) Assertions, 7) Listeners 
  • Listener가 무엇인가?
  • Assertion이 무엇인가?
  • Distributed Load Testing이란?
  • JMeter에서 리소스 요구사항이나 메모리 부족 이슈를 관리하는 방법은?
  • JMeter가 감당할 수 있는 최대 사용자 부하 또는 쓰레드가 무엇인가?
  • JMeter에서 Co-relation이 무엇인가?
  • JMeter에서 캐시와 쿠키를 관리하는 방법은?
  • JMeter에서 Timers의 역할은?

 

반응형

+ Recent posts