Test Preparation

Defining Your Goals

The first thing to do when planning your load test is to define your goals. While testers often assume that their goals are clear to all involved parties, they often are not. It is important that the quality assurance team and management work toward the same goals.

When writing up goals, first consider your highest-level goals:

  1. Discover the baseline performance of your application
  2. Optimize/tune your application
  3. Determine if the application under test is ready for production

Once you have established your high-level goals, you need to break them down into clear, measurable objectives, covering issues such as how you plan to accomplish your goals, how you plan to measure your goals, and what results will be considered acceptable.

Here is an example of how you might break down your testing goals:

Goal #1: Discover and document the baseline performance of your application

  • Use Silk Performer to measure the response times of critical application functions.
  • Place timer functions around window/screen synchronizations (WaitFor events). These measurements will show up in the final report.

Critical timers:

  • Measure how much time it takes from when the OK button is clicked on the Login window until the Welcome window appears.
  • Measure how much time it takes from when the Query results button is clicked until the populated list is displayed.

Goal #2: Optimize/tune the application

  • Optimize/tune the application for 5 days.
  • Document all changes and their impact on the performance of the application under test.

Goal #3: Determine if the application under test is ready for production

  • The application is ready for production if the following condition is met: All response times are under 5 seconds (Silk Performer provides metrics for each window and screen sync).

With a list of measurable objectives, your test results define a definite point at which the application will be ready for production. This also eliminates the risk of endlessly optimizing the application as tuning it to the defined goal is adequate.