It looks like agile methodologies are somewhat struggling with performance testing. Theoretically it should be a piece of cake: every iteration you have a working system and know exactly where you stand with the system’s performance. Unfortunately, it doesn’t always work this way in practice. Performance related activities tend to slip toward the end of the project. Another issue is that agile methods are oriented toward breaking projects into small tasks, which is quite difficult to do with performance: performance-related activities usually span the whole project.
From one side we have a challenge to add performance testing into Continuous Integration making it a part of DevOps processes. From another side, approaching performance testing formally, with rigid, step-by-step approach and narrow specialization often leads to missing performance problems or to prolonged agony of performance troubleshooting. With small extra efforts, making the process more exploratory, efficiency of performance testing increases significantly and these extra efforts usually pay off multi-fold even before the end of performance testing.
This presentation discusses how performance testing may be adjusted to the modern industry trends and become an integral part of agile processes.