NỘI DUNG BÀI HỌC

✅ Giới thiệu
✅ Cấu trúc Boundary Extractor
✅ Ví dụ minh họa

📘 Boundary Extractor

1. Giới thiệu

Boundary Extractor là một Post-Processor trong Apache JMeter, dùng để trích xuất giá trị từ Response dựa trên cặp Left Boundary (LB) và Right Boundary (RB).

Nó hoạt động giống như hàm SUBSTRING: tìm phần văn bản nằm giữa LB và RB.

2. Cấu hình chính

  • Left Boundary (LB): Chuỗi bắt đầu trước dữ liệu cần lấy.
  • Right Boundary (RB): Chuỗi kết thúc sau dữ liệu cần lấy.
  • Match No.: Chỉ định lấy kết quả thứ mấy (1 = đầu tiên, -1 = tất cả).
  • Default Value: Giá trị trả về nếu không tìm thấy.


3. Ví dụ thực tế nâng cao

Ví dụ 1: Trích xuất token từ JSON Response


Response Body:
{
  "status": "success",
  "user": "tester01",
  "roles": ["admin", "editor"],
  "session": {
    "token": "abc123xyz456",
    "refresh": "rToken987654",
    "expires": "2025-12-31T23:59:59Z"
  }
}

LB = "token": "
RB = ",

Kết quả: abc123xyz456

Ví dụ 2: Trích xuất nhiều Cookie từ Response Header


HTTP/1.1 200 OK
Date: Thu, 11 Sep 2025 12:00:00 GMT
Server: Apache/2.4.41 (Ubuntu)
Set-Cookie: SESSIONID=xyz987; Path=/; Secure; HttpOnly
Set-Cookie: PREF=lang=en; Path=/; Secure
Content-Type: text/html; charset=UTF-8

LB = "Set-Cookie: SESSIONID=" | RB = ";" → Kết quả: xyz987

LB = "Set-Cookie: PREF=lang=" | RB = ";" → Kết quả: en

Ví dụ 3: Trích xuất dữ liệu từ HTML Response


<html>
  <head><title>Dashboard</title></head>
  <body>
    <h1>Welcome, John Doe!</h1>
    <input type="hidden" name="csrf_token" value="token987xyz">
    <a href="/logout?uid=5566">Logout</a>
  </body>
</html>

LB = "value=\"" | RB = "\"" → Kết quả: token987xyz

LB = "uid=" | RB = "\"" → Kết quả: 5566

Ví dụ 4: Trích xuất dữ liệu từ XML Response


<Response>
  <User>
    <ID>U12345</ID>
    <Name>Alice</Name>
    <Role>Manager</Role>
  </User>
  <User>
    <ID>U67890</ID>
    <Name>Bob</Name>
    <Role>Developer</Role>
  </User>
</Response>

LB = "<ID>" | RB = "</ID>" | Match No. = 1 → Kết quả: U12345

LB = "<ID>" | RB = "</ID>" | Match No. = 2 → Kết quả: U67890

4. Câu hỏi trắc nghiệm

Câu 1: Với response header, nếu cần lấy giá trị của 'lang' trong PREF=lang=en, cấu hình nào đúng?

  1. LB = "lang=" | RB = "\""
  2. LB = "PREF=lang=" | RB = ";"
  3. LB = "PREF=" | RB = "="
  4. LB = "Set-Cookie:" | RB = "PREF"

Giải thích: Cần chỉ rõ 'PREF=lang=' và kết thúc tại dấu ';' để lấy đúng giá trị.

Câu 2: Nếu muốn lấy tất cả ID thì Match No. để bao nhiêu?
<Response>
  <User>
    <ID>U12345</ID>
    <Name>Alice</Name>
    <Role>Manager</Role>
  </User>
  <User>
    <ID>U67890</ID>
    <Name>Bob</Name>
    <Role>Developer</Role>
  </User>
</Response>

  1. 0
  2. 1
  3. 2
  4. -1

Giải thích: Match No. = -1 sẽ lấy tất cả các giá trị phù hợp.

Câu 3: Nếu LB hoặc RB không tồn tại trong response, Boundary Extractor trả về gì?

  1. NULL
  2. Giá trị mặc định (Default Value)
  3. 0
  4. Dừng test case

Giải thích: Nếu không tìm thấy, sẽ trả về Default Value (nếu có).

5. Kết luận

Boundary Extractor hữu ích trong trường hợp dữ liệu có cấu trúc rõ ràng với LB và RB xác định.

Regex Extractor linh hoạt hơn cho dữ liệu phức tạp, nhưng Boundary Extractor dễ dùng và nhanh hơn trong nhiều trường hợp.

 

Teacher

Teacher

NGUYỄN TRÍ DIỆN

Fullstack QA

With over 4 years of experience in software testing — including manual, automation, and performance testing — I have built a strong foundation in delivering high-quality software.

I specialize in the E-commerce and Banking domains, with deep understanding of business flows, performance requirements, and testing standards.

Strong in critical thinking and problem-solving, I proactively identify issues and drive effective solutions.

With an engineering mindset, I continuously update my skills and contribute across functions to help teams achieve their goals.


Cộng đồng Automation Testing Việt Nam:

🌱 Telegram Automation Testing:   Cộng đồng Automation Testing
🌱 
Facebook Group Automation: Cộng đồng Automation Testing Việt Nam
🌱 
Facebook Fanpage: Cộng đồng Automation Testing Việt Nam - Selenium
🌱 Telegram
Manual Testing:   Cộng đồng Manual Testing
🌱 
Facebook Group Manual: Cộng đồng Manual Testing Việt Nam

Chia sẻ khóa học lên trang

Bạn có thể đăng khóa học của chính bạn lên trang Anh Tester để kiếm tiền

Danh sách bài học