The strategy embraced for performance testing can fluctuate broadly, however the goal for execution tests continues as before. It can assist with exhibiting that your product framework meets specific pre-characterized execution models. Or on the other hand it can assist with contrasting the exhibition of two programming frameworks. It can likewise assist with recognizing portions of your product framework which corrupt its exhibition.
Following is the general method on how to perform performance testing:
- Identify Your Testing Environment
Know your actual test climate, creation climate and what testing devices are accessible. Comprehend subtleties of the equipment, programming and organization arrangements utilized during testing before you start the testing system. It will assist analyzers with making more productive tests. It will likewise assist with distinguishing potential difficulties that analyzers might experience during the performance testing strategies.
- Identify the Performance Acceptance Criteria
This incorporates objectives and limitations for throughput, reaction times and asset assignment. Distinguishing project achievement rules beyond these objectives and constraints is likewise essential. Analyzers ought to be engaged to define execution measures and objectives on the grounds that frequently the undertaking determinations wo exclude a sufficiently wide assortment of performance benchmarks. At times there might be none by any means. While conceivable tracking down a comparative application to contrast with is an effective method for laying out performance objectives.
- Plan & Design Performance Tests
Decide how utilization is probably going to shift among end clients and distinguish key situations to test for all conceivable use cases. It is important to mimic an assortment of end clients, plan performance test information and layout what measurements will be assembled.
- Configuring the Test Environment
Set up the testing climate before execution. Additionally, orchestrate instruments and different assets.
- Implement Test Design
According to your test design create the performance tests.
- Run the Tests
Execute and monitor the tests.
- Analyze, Tune and Retest
Solidify, examine and share test results. Then calibrate and test once more to check whether there is an improvement or decline in performance. Since upgrades by and large become more modest with each retest, stop while bottlenecking is brought about by the computer processor. Then you might have the consider choice of expanding computer processor power.
Parameters Monitored in Performance Testing
- Processor Usage – an amount of time processor spends executing non-idle threads.
- Memory use – amount of physical memory available to processes on a computer.
- Disk time – amount of time disk is busy executing a read or write request.
- Bandwidth – shows the bits per second used by a network interface.
- Private bytes – number of bytes a process has allocated that can’t be shared amongst other processes. These are used to check memory leaks and usage.
- Committed memory – amount of virtual memory used.
- Memory pages/second – number of pages written to or read from the disk in order to resolve hard page faults. Hard page faults are when code not from the current working set is called up from elsewhere and retrieved from a disk.
- Page faults/second – the overall rate in which fault pages are processed by the processor. This again occurs when a process requires code from outside its working set.
- CPU interrupts per second – is the average number of hardware interrupts receiving and processing each second in a processor
- Disk queue length – is the avg. no. of read and write requests queued for the selected disk during a sample interval.
- Network output queue length – length of the output packet queue in packets. Bottlenecking needs to be stopped if anything is delayed more than two.
- Network bytes total per second – rate which bytes are sent and received on the interface including framing characters.
- Response time – time from when a user enters a request until the first character of the response is received.
- Throughput – rate a computer or network receives requests per second.
- Amount of connection pooling – the number of user requests that are met by pooled connections. The more requests met by connections in the pool, the better the performance will be.
- Maximum active sessions – the maximum number of sessions that can be active at once.
- Hit ratios – This has to do with the number of SQL statements that are handled by cached data instead of expensive I/O operations.
- Hits per second – the no. of hits on a web server during each second of a load test.
- Rollback segment – the amount of data that can rollback at any point in time.
- Database locks – locking of tables and databases needs to be monitored and carefully tuned.
- Top waits – are monitored to determine what wait times can be cut down when dealing with the how fast data is retrieved from memory
- Thread counts – An applications health can be measured by the no. of threads that are running and currently active.
- Garbage collection – It has to do with returning unused memory back to the system. Garbage collection needs to be monitored for efficiency.
In Programming, Execution testing is fundamental prior to showcasing any product item. It guarantees consumer loyalty and safeguards a financial backer’s speculation against item disappointment. Expenses of execution testing are generally more than compensated for with further developed consumer loyalty, unwaveringness, and maintenance.