본문으로 건너뛰기
AIDevOps
  • Learn
  • Learning Paths
  • Practice
  • Open Source
  • Books
  • Engineering

    AI DevOpsAI 서비스 개발·운영 전체 지도LLMOpsLLM 배포·평가·관측실전 프로젝트AI Agent 프로젝트 실습

    Knowledge

    Docs기술 문서 모음Blog엔지니어링 아티클Plogger개발 기록 피드

    Validate

    Certification3단계 역량 인증 · 준비 중
AI Models
LlamaMistralGemmaDeepSeekQwen
🧪 검증
k6JMeternGrinder
🤖 AI 실전 개발
AI 실전 입문 & 로드맵Hugging FaceLangChainLlamaIndexLLMOps|LangGraphMCPMulti-AgentAgent Evaluation
🧠 AI Core
AI 입문 & 로드맵ML FundamentalsLLM Fundamentals|Python AIC++|PyTorchTensorFlowJAX
🧠 AI Agent 개발
금융 AI AgentLLM API 서버주식 투자 AgentAIOps AI Agent교육 AI Agent코딩 AI Agent
🌱 Spring Cloud
Spring 입문 & 로드맵Spring Cloud GatewaySpring BootJava|Spring AISpring SecuritySpring BatchSpring JPA
🐳 DevOps
DevOps 입문 & 로드맵LinuxDockerCI/CD|Kubernetes 기본K8s 심화/실무PrometheusGrafana
🧱 인프라
인프라 입문 & 로드맵NginxRedis
☁️ 클라우드
클라우드 입문 & 로드맵AWSGCPAzureNCPCloudflare
🎨 Frontend
Frontend 입문 & 로드맵JavaScriptTypeScript|ReactNext.js|VueNuxt
📱 Mobile
Mobile 입문 & 로드맵KotlinAndroidFlutter
⚙️ Backend
Backend 입문 & 로드맵Python 기본FastAPIDjangoFlask|CGoGinNode.js
💾 Database
DB 입문 & 로드맵공통 SQLOracleMySQLPostgreSQL|MongoDB벡터 DB
AIDevOps

Engineering AI. From Code to Production.
AI와 AI Agent를 개발하고 운영하기 위한 엔지니어링 학습 플랫폼

Learn

  • 전체 가이드
  • Learning Paths
  • Practice
  • Books

Resources

  • AI DevOps
  • LLMOps
  • 실전 프로젝트
  • Docs
  • Blog
  • Plogger
  • Open Source
  • Certification (준비 중)

Start Here

  • AI Core 로드맵
  • AI 실전 개발 로드맵
  • Spring Cloud 로드맵
  • DevOps 로드맵
  • 인프라 로드맵

 

  • 클라우드 로드맵
  • Frontend 로드맵
  • Mobile 로드맵
  • Backend 로드맵
  • Database 로드맵
© 2026 AI DevOps Korea. All rights reserved.
이용약관개인정보처리방침Sitemaptestforge.kr
부하 테스트 가이드

🔧 JMeter 완전 가이드

Visitors

Apache JMeter는 Java 기반의 오픈소스 부하 테스트 도구로, GUI를 통한 직관적인 테스트 설계와 강력한 분산 테스트 기능을 제공합니다. HTTP, FTP, JDBC, JMS 등 다양한 프로토콜을 지원합니다.

← AI DevOps 홈으로
🔧

JMeter 실전 예제

Thread Group, CSV 데이터셋, HTML 리포트, 분산 테스트 예제 모음.

실전 예제 보기 →

목차

0 / 9
  1. JMeter란?
  2. 설치
  3. GUI 기본 사용법
  4. Assertions
  5. 변수 & 파라미터
  6. CLI 실행 (Non-GUI)
  7. HTML 리포트 생성
  8. 분산 테스트
  9. CI/CD 통합
목차 9개 섹션
  1. JMeter란?
  2. 설치
  3. GUI 기본 사용법
  4. Assertions
  5. 변수 & 파라미터
  6. CLI 실행 (Non-GUI)
  7. HTML 리포트 생성
  8. 분산 테스트
  9. CI/CD 통합

JMeter란?

Apache JMeter는 1998년 Stefano Mazzocchi가 개발한 Java 기반의 오픈소스 성능 테스트 도구입니다. GUI를 통해 복잡한 테스트 시나리오를 코드 없이 구성할 수 있어 QA 엔지니어에게 특히 인기가 높습니다.

특징설명
GUI 기반코드 없이 드래그앤드롭으로 테스트 설계
다중 프로토콜HTTP, HTTPS, FTP, JDBC, JMS, SOAP, REST
분산 테스트Controller + Slave 구성으로 대규모 부하 생성
플러그인 생태계JMeter Plugins Manager로 확장 가능

설치

JMeter는 Java 8 이상이 필요합니다.

BASH
# Java 확인
java -version

# macOS (Homebrew)
brew install jmeter

# 수동 설치 (모든 OS)
# https://jmeter.apache.org/download_jmeter.cgi 에서 .tgz 다운로드
tar -xzf apache-jmeter-5.x.x.tgz
cd apache-jmeter-5.x.x/bin
./jmeter   # GUI 실행 (macOS/Linux)
jmeter.bat # GUI 실행 (Windows)

GUI 기본 사용법

Thread Group 생성

Test Plan → Add → Threads → Thread Group 순서로 생성합니다.

  • Number of Threads (users): 동시 사용자 수
  • Ramp-up period: 모든 스레드가 시작되는 데 걸리는 시간(초)
  • Loop Count: 반복 횟수 (-1은 무한)

HTTP Request Sampler 추가

Thread Group → Add → Sampler → HTTP Request로 추가합니다.

TEXT
Server Name: httpbin.org
Port: 443
Protocol: HTTPS
Method: GET
Path: /get

Assertions

HTTP Request → Add → Assertions → Response Assertion으로 추가합니다.

TEXT
Field to Test: Response Code
Pattern Matching Rules: Equals
Patterns to Test: 200
💡

JSON Path Assertion으로 응답 JSON의 특정 필드 값을 검증할 수 있습니다. Add → Assertions → JSON Assertion을 사용하세요.

변수 & 파라미터

User Defined Variables

TEXT
Name: BASE_URL
Value: https://api.example.com

# 사용법: ${BASE_URL}/users

CSV Data Set Config (다중 사용자 로그인)

CSV
username,password
user1,pass1
user2,pass2
user3,pass3

Thread Group → Add → Config Element → CSV Data Set Config로 CSV를 불러와 변수로 사용합니다.

CLI 실행 (Non-GUI)

CI/CD 및 대규모 테스트에는 Non-GUI 모드를 사용합니다. GUI 모드는 리소스를 많이 소비합니다.

BASH
jmeter -n -t test-plan.jmx -l results.jtl -e -o report-dir
옵션설명
-nNon-GUI 모드
-t.jmx 테스트 플랜 파일
-l결과 로그 파일 (.jtl)
-e테스트 후 HTML 리포트 생성
-o리포트 출력 디렉토리

HTML 리포트 생성

BASH
# 테스트 실행 중 리포트 생성
jmeter -n -t test-plan.jmx -l results.jtl -e -o ./report

# 기존 .jtl 파일로 리포트만 생성
jmeter -g results.jtl -o ./report

./report/index.html을 브라우저로 열면 응답시간 분포, 처리량, 에러율 등의 상세 분석 리포트를 확인할 수 있습니다.

분산 테스트

단일 머신의 한계를 넘는 대규모 부하를 위해 Controller + Agent(Slave) 구성을 사용합니다.

jmeter.propertiesINI
# Controller의 jmeter.properties
remote_hosts=192.168.1.101:1099,192.168.1.102:1099
BASH
# Agent 서버에서 실행
jmeter-server

# Controller에서 분산 테스트 실행
jmeter -n -t test-plan.jmx -r -l results.jtl

CI/CD 통합

.github/workflows/jmeter.ymlYAML
name: JMeter Load Test
on: [push]
jobs:
  load-test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-java@v4
        with: { java-version: '17' }
      - name: Install JMeter
        run: |
          wget https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-5.6.3.tgz
          tar -xzf apache-jmeter-5.6.3.tgz
          echo "$PWD/apache-jmeter-5.6.3/bin" >> $GITHUB_PATH
      - run: jmeter -n -t tests/load-test.jmx -l results.jtl -e -o report
      - uses: actions/upload-artifact@v4
        with: { name: jmeter-report, path: report/ }