As stated in my previous message, here's a first draft for high-level requirements for JMeter. I want opinions, rewritings, additions... or if you think it's a useless exercise, please tell me.

Note that most functional requirements are still missing (can you Note it's very HTTP-based. We may want to separate HTTP requirements and add reqs. for other protocols.

I've used "must" for requirements whose failures to comply should be filed as a Normal, Major, Critical, or Blocker bug.

I've used "should" for requirements whose failures to comply should be filed as Minor or Normal bugs.

---------------

Functionality requirements:

- Must be able to exercise the functionality of any HTTP/HTTPS site which respects common conventions (e.g. that GET requests don't have a body, that query-string parameters are URL-encoded and separated by & and =,...).
[This includes using different test data for each thread or for each test loop, reusing data extracted from previous responses, etc...]

- Should be able to exercise the functionality of any HTTP/HTTPS site.

- When generating HTTP/HTTPS load, should simulate the behaviour of real browsers at the HTTP protocol level.

- Shouldn't break on illegal but common stuff (e.g. "Location:" headers without a protocol://server in the URL, fake SSL certificates,...).

- Should show test results in both numerical and graphical form. The graphs and reports should be nice-looking enough to show them to a customer.
[Yes, I know it's pretty weak as a requirement, but that's the meaning of "high-level" after all, isn't it? :-) ]

Portability:

- Must be 100% Java.

- Must run on 1.2.2, 1.3.1 and 1.4.1 Sun JDKs.

- Should run on all JDKs from 1.2.2 to current.

- Must run on win32 and linux.

- Should run on all platforms (assuming enough resources available).

Usability:

- Ease of installation: should be able to set up a single load-generation workstation on any site in a few hours -- even in the presence of ugly firewall settings.
[This probably requires a command-line interface.]

- Ease of use: any user (even non-programmers) should be able to create and run simple test scripts to test HTTP sites in minutes -- assuming no ugly firewall settings -- just by following instructions.

- Should be reasonably easy to set up and use a cluster of load-generation workstations, even in the presence of ugly firewall settings.
[This is probably one of the very weak aspects of JMeter right now.]

Performance:

- Should be able to drive an application server at 100% with one single similarly-powered load-generation machine -- assuming an average application is running on the server which doesn't require specially complex processing of responses.
[This one is pretty weak too... ideas for making it better?]



--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

  • Requirements Jordi Salvat i Alabart
    • Jordi Salvat i Alabart

Reply via email to