What is PDD and Need of PDD
•PDD
is just TDD applied to Performance Testing.
•Measure
and log performance metrics
•Fail
or Pass the test run based on thresholds
•Kick
of the process in the early stages of Development
•Take
the qualitative decision.
•Integrate
with CICD
Dimensions of PDD
A system’s
performance can be analysed along three dimensions
•Is it fast? (enough) —
Latency and Throughput within limits
•Does it scale? — Vertical & Horizontal scaling
•Is it reliable? (enough)— Load
and degrade point.
•Performance can
be measured with Disk IO, Network IO, Memory
and CPU time.
Core Performance Principles
•Memory is faster than disk - much faster
- and memory is cheap.
•Object allocation
and garbage collection is slow.
•Data formats and data structures make a
big difference in speed.
•Asynchronous IO scales better than
synchronous IO.
•Single threaded performance
is a prerequisite for multithreaded performance.
•Shared memory (or disk) concurrency is
bad because it usually leads to lots of contention when the system gets busy.
•Keep low memory footprint.
JConsole
& JVisualVM
•Basic
monitoring – CPU,
Memory, Classes and Threads
•Remote
JVM Monitoring
•JMX
Support
•Deep
Visual Representation in the form of Graphs
•Heap
Dump, Thread Dump.
Other Tools
•SoapUI
•Artillery
No comments:
Post a Comment