About some testing tools

Reasons for using testing tools during development:

  1. After each iteration of implementation you should always check that you have not spoiled/lost some old features. Running some set of test cases takes a lot time, so developers need to write unit and acceptance tests. But you can also use some well-known decisions for fast testing.
  2. Sometimes you need to reproduce bug which can occur only on peak load.
  3. It is the way to find some performance problem.

So, some testing tools:

  1. selenium ide for web development. It is implemented as a Firefox extension, and allows you to record, edit, and debug tests. This tool does not help you with performance testing, but it is good for fast testing. And you do not need to think about writing test cases, just do some actions and record them.
  2. JMeter. This tool allows you to test almost everything. I think, that it is the best decision for performance testing and creating peak load. But you will need to spend some time on creating test cases because it is not a trivial task. Also you can not test the actions supported by browsers. In particular, JMeter does not execute the Javascript found in HTML pages.
  3. Badboy. This is also testing tool for web development. Some disadvantages: 1) it is running on windows. 2) it is not absolutely free. But I like this tool because it can record test cases and has magic option “export to JMeter“.

Example of simple test plan in JMeter:
Thread Group: The controls for a thread group allow you to:

  • Set the number of threads
  • Set the ramp-up period
  • Set the number of times to execute the test

HTTP Request: The sampler lets you to send http/https request to a web server
HTTP Header Manger: lets you add or override http request headers
Test action: pauses or stop selected target
Gaussian Random Timer: one of the available timers for pausing target.
Save Responses to a file: create a file of response data. You can save failed, success or both responses
Summary Report: creates a table row for each differently named request in your test.
View Results in Table: creates a row for every sample result.