Bicycle racing in beautiful surroundings
31.10.2019Buyer’s Guide: Five perspectives into test automation
8.10.2021An webstore stops responding during Black Friday. Reporting working hours takes forever on every Friday afternoon. A mobile app refuses to load content and leaves the user hanging.
Software performance testing is the go-to tool for preventing issues described above. When you remove hidden bottlenecks caused by high-volume traffic at peak hours, you can keep your users happy and ensure that the service keeps generating value to its owners.
Even though actual performance testing is a job for a testing professional, there are some things that you can do as the testing service buyer to ensure you get the most bang for your buck.
Here are our five tips for software testing service buyers!
1. Set performance requirements at the beginning of your project
Ensuring the performance of a digital service starts already before a single line of code is written.
No matter if your service is developed by your own in-house team, software development partner, or an off-the-shelf software vendor, make sure you discuss the performance requirements in detail with the developer.
How many concurrent users the service may have and how much load and traffic they can generate? When are the service usage peaks and how long do they last? How much data moves through the system? What are the preferred and maximum response times – how long the users can wait for a website to load, for example?
When real-life performance requirements are documented at an early stage, the developers can plan on meeting them. In addition, this helps your entire team to understand the desired service quality level from early on.
In addition to specific performance requirements, you should plan ahead what happens if your service does end up having performance problems. How does the service recover from overload, what kinds of errors are generated and what kinds of notifications are shown to the end user.
If you don’t know how to start dialogue with your software developer, Testimate’s experts can also help with defining performance requirements!
2. Schedule performance testing into your project
Performance testing is typically done during the last quarter of a software development project. At this stage, the software is getting close to completion and all key use cases can be tested.
Naturally, the duration of performance testing depends on the size of the project. Generally speaking, you should reserve approximately four calendar weeks for testing.
When testing starts, the testing expert draws up testing scenarios based on use cases and service requirements. After this, the expert creates automation scripts used in testing and starts the actual testing work.
Testing gets instantly to full speed when all needed information is readily available and the development team is prepared to support the testing expert.
3. Prepare testing data and system access
If you want to load a web service with hundreds of concurrent users or high volumes of data, the test users and data must be generated before the testing can start. A testing consultant typically does not have the possibility to automatically generate test data and creating dummy user accounts manually takes a lot of time.
So, have a chat about the required testing data with your testing consultant well in advance. This way, the testing stays in schedule and the budget is not exceeded with extra manual work.
If the testing is performed remotely, the testing consultant probably needs access to the development environment from an external network. This can be achieved with a VPN connection to a computer dedicated for testing. Check the need for remote connections from your IT department.
4. Make yourself available during testing
Performance testing is not done in a black box – it requires cooperation with the rest of the development team. Testing is performed together with the customer or a representative from the software supplier’s organization. Open dialogue is needed during test planning and test implementation when potential problems are uncovered.
So, check that the testing consultant has access to a technically oriented project manager or a server-side expert. Having direct access to the software developers also speeds up troubleshooting.
5. Be prepared to react to test findings
In the best case scenario, the system passes load testing without a problem. However, sometimes testing uncovers issues that the development team has to deal with.
Discovered performance issues can be solved in various ways, depending on the issue. Solution alternatives include boosting server capacity, optimizing databases or streamlining the software code.
If possible, be prepared to allocate time for performance fixes and re-running the essential performance tests when the fixes are in place.
Testimate provides software testing services for even the most demanding projects. Get in touch with us today, let’s find out how we can help you!