Java: A platform for platforms
Sun's reorg may seem promising to shareholders but it's also a scramble for position. The question now is whether Sun can, or wants to, maintain its hold on Java technology. Especially with enterprise leaders like SpringSource and RedHat investing heavily in Java's future as a platform for platforms

Also see:

Discuss: Tim Bray on 'What Sun Should Do'

Featured Whitepapers
Newsletter sign-up
View all newsletters

Sign up for our technology specific newsletters.

Enterprise Java
Email Address:

LISA smiles on J2EE app testers

iTKO's regression- and load-testing tool makes steep learning curve worth the effort

  • Digg
  • Reddit
  • SlashDot
  • Stumble
  • del.icio.us
  • Technorati
  • dzone

Capable of prying into just about any nook or cranny where one might apply J2EE technology, Interactive TKO's (iTKO) LISA (Load-bearing Internet-based Simulator Application) is a QA engineer's dream.

This pure Java tool for regression- and load-testing J2EE components runs anywhere you can plant and execute a JDK 1.3.1+ environment, shaking down individual classes, EJB (Enterprise JavaBean) components, Web services, Webpages, databases, and more to find their weaknesses.

Although I tested LISA with JBoss, its documentation claims it can test J2EE applications running on any J2EE container or Web server backed by any database compliant with Java Database Connectivity (JDBC). That wide-ranging coverage, combined with its solid performance and versatility, means LISA just might supersede the QA arena and have a few developers seeing visions of grandeur, too.

LISA's structure

LISA's documentation touts the tool as a "no-code" solution. This is largely true: you can create and execute batteries of tests by promenading through LISA's crowd of wizards.

Given that it's a Java testing tool, however, you won't get far without employing some Java—if only to identify which methods need exercising, what their input arguments should be, and what the methods' outputs must be. Nevertheless, LISA dispatches much of your test-creation work via its numerous, dense dialogs.

LISA is a simulator tool, as noted in its acronym, and the product executes its simulation duties well. For example, when testing a hypothetical user's access to a Webpage, LISA allows you to add "think time" to the activity, thereby mimicking the time delay a user will exhibit while scanning the page before actually entering data into any controls.

In addition, LISA simulates multiple users calling into the same Website and applies the effect of think time across all the user simulations so that you can adjust the tests to create a more realistic usage profile.

Projects in the LISA environment are organized into "test cases." A test case is a collection of nodes, in which each node typically defines an individual test action within the test case.

LISA recognizes more than a dozen different node types, each geared for testing a specific component type. For example, you can build a Webpage test by creating an HTTP/HTML Request node. After you specify the URL you want to call, the host name and port, and the get and post parameters you want included, LISA will send the request "live" to the Web server, allowing you to examine the response.

If the response is as you like it, you set that as the response that LISA should expect when the test is run noninteractively. Once you've established the correct result of a test, you "teach" LISA the correct response by setting an "assertion." Typically, an assertion will point to a target node; if LISA finds that the response is not as expected, it will transfer control to that target. Usually, the target node's job is to post an error message in a log, but it can also halt the testing completely, depending on your preference.


  • Digg
  • Reddit
  • SlashDot
  • Stumble
  • del.icio.us
  • Technorati
  • dzone
Comment
Login
Forgot your account info?
Add comment
Anonymous comments subject to approval. Register here for member benefits.
Have a JavaWorld account? Log in here. Register now for a free account.
Resources