Evaluate Weigh the pros and cons of technologies, products and projects you are considering.

Meeting performance testing goals before moving an application into production

Our project management expert walks developers through the application development process, from gathering requirements and establishing an architecture to finalizing performance testing and bringing your application to market.

How can we execute performance testing before moving the application to production? Our test environments use different hardware, so won't the results be meaningless?

Performance testing is something that should be done throughout the entire development lifecycle. There is a lot of testing that can and should be done during the early stages of design, development, and system test to optimize performance, regardless of hardware configurations.

In the early stages of the project, requirements should be gathered around such things as expected response time, throughput and scalability. An architecture needs to be designed to take these things into account. This architecture should be reviewed keeping in mind ways to optimize those areas of performance that are most important to the users.

During the code development stage, performance unit tests should be created and executed. These could check for memory leaks or other areas that may make the code vulnerable to performance issues. Functional test efforts should include timings for functions that are time-sensitive. Even if the production hardware may speed up the overall time, testing for performance early will help uncover certain areas of the code which perform poorly compared to other functions and can further be investigated for optimization.

Similarly, load and stress tests can be run in performance test environments to help uncover scenarios in which the software is performing slowly. It's a mistake to think that these problems will all be solved by throwing more hardware at the problem. Many areas of the software can be optimized before deploying on the production hardware.

Your final tests should try to emulate your hardware environment as closely as possible. Though your test environment may not be as robust as your production environment, you can continue to find and correct potential bottlenecks during the test phases.

If you review and test for performance throughout the software development lifecycle, your team will have the opportunity to ensure each component of the application is operating at its optimum performance before deploying to your production deployment.

Dig Deeper on Topics Archive

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.