Performance testing in the application life cycle
Performance engineering is the application of performance testing into an application life cycle.
We start with the analysis phase, where we understand the business requirements and start to form the footprint of the load that we need to generate. At this point you might want start running proof of concepts on the tools that you think might be suitable for the job. We then move on to the planning phase, where we detail our test schedule. So what types of users do we want to simulate? Some users making sales, some users doing searches, some users doing updates. Then we define how many of those types of users will be running in the test. For example, 90 percent might be browsing a site and maybe 5 percent will be buying it. Then another five percent might be doing some other set of obituary transactions on the site. Also, part of the planning phase is where we put together our critical paths through the application so the user journeys. And we’re going to use that to capture our scenarios in the tools. So what ultimately the tools is generating a script right. So we do that with a record and playback. We use those script to put together our scenarios and really importantly, we take the date requirements. If you’re going to do a load test with 100 users, in many cases it is very important that they are unique users. So you need to have some user accounts on the system. Incidentally, you can also use a tool to generate this test data using the application to face itself.
Also, consider with data, if you’re going to update 10,000 policies you’re going to need quite a few thousand insurance policy IDs in order to make sure that you’re not getting some kind of deadlock with two users trying to update one insurance. I’m taking the scenario of an insurance website here that two users not trying to update the same policy at one time. Then we move on to the execution phase. This can be anything from two hours to 24 hours, depending on the type of test that we’re running. Depending on the two, you might be able to start to get some results as the test is running, while it’s in runtime. Based on that, you’ll be able to know whether to call the test off if it’s running particularly badly, the application or continue to the end.
Next Agileload in the application testing lifecycle