Defect Analysis

Defect analysis investigates performance issues to isolate their root causes.

What is Defect Analysis?

Defect analysis is the process of investigating performance issues observed during load testing to identify the underlying root cause. It combines evidence from multiple metrics, logs, and system behavior.

Objectives

  • Identify performance defects and their symptoms
  • Analyze and correlate metrics to find root causes
  • Provide actionable recommendations to fix the issues
  • Prevent defect recurrence through tuning and monitoring

Common Performance Defects

Defect Symptom Common Root Cause
Response Time Degradation
Average response times increase continuously during steady state.
  • Resource queuing (threads, connections, CPU)
  • Database lock contention or slow queries
  • Network throttling or latency issues
Memory Leak
Memory utilization grows continuously and never returns to baseline after load.
  • Application code failing to release object pointers
  • Unclosed connections, statements, or resources
  • Improper caching or session management
Database Lock
Throughput drops to zero and requests timeout.
  • Concurrent updates targeting the same table row
  • Missing indexes causing full table locks
  • Long transactions holding locks without commit

Defect Analysis Workflow

Detect the Symptom

Identify abnormal behavior in graphs, logs, or reports.

Correlate Metrics

Correlate multiple metrics on the same timeline.

Isolate Root Cause

Drill down to find the exact root cause.

Validate the Cause

Confirm the cause with additional tests or logs.

Fix & Retest

Apply fix, re-run test, and verify improvement.

Defect Details & Analysis

Response Time Degradation
Memory Leak
Database Lock
Symptom
Average response times increase continuously during steady state.
Impact
Poor user experience, SLA violations, system throughput reduces.
How to Detect
Overlay Users vs Response Time and Throughput vs Response Time graphs.

Example Analysis

Users vs Response Time
Throughput TPS
Hits vs Throughput

Root Cause Indicators

  • Response time increases as users increase.
  • Throughput plateaus while response time continues to rise.
  • CPU, DB, or thread pool utilization near 100%.

Common Root Causes

  • Thread pool exhaustion causing request queuing.
  • Slow database queries or missing indexes.
  • High CPU or GC activity.

Recommendations

  • Increase thread pool size.
  • Optimize slow SQL queries and add indexes.
  • Scale up CPU/RAM or distribute load.

Tools to Analyze Defects

JMeter
  • View Summary Report, Aggregate Report.
  • Analyze graphs with Backend Listener.
  • Use JMXMon / PerfMon for system metrics.
NeoLoad
  • Use Monitor & Results.
  • Drill down by transaction.
  • Correlate KPIs with server metrics.
LoadRunner
  • Use Analysis and Diagnostics.
  • Correlate Controller, Agent, and Server metrics.
  • Identify bottlenecks in graphs.
Common Artifacts
  • Logs (Application, Server, DB).
  • Performance graphs.
  • System/Infra metrics.
  • Configuration & code review.
  • logs/ app.log
  • results/ server.log
  • screenshots/ db.log
  • config/ graphs.png
Tip: Always correlate multiple metrics and validate with logs before concluding the root cause.