Hi Rajesh - your scenario testing , aka 'functional testing'  is something
that there is a growing interest in the junit/cactus community. Shane has
done some good stuff in the area of dynamic proxies with some colleagues of
his (see http://www.gnufoo.org/junit/index.html ), which open up Junit to be
more flexible, which is critical to those of us who want to use Junit (and
thus cactus) to do functional testing.

I say we spec out a little project here and collaborate and get something
done. Vincent has shown me where some of the code changes need to go in
cactus.

Cheers,
Bill



----- Original Message -----
From: "Rajesh Kanade" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Cc: <[EMAIL PROTECTED]>
Sent: Monday, February 18, 2002 7:43 PM
Subject: Doing scenario based testing


Hi All

I am new to cactus and new to testing arena itself.

My company writes web based applications ( using MVC ) and I am looking at
automating testing at various levels.The server side code is entirely return
in Java ( no EJB ).

I am trying to come up with a framework ( or use one if it exists already )
so that we can test our application at various levels like
class level, component level, sub system , system ( all this done without UI
in picture )
So for a class level I can use JUnit to do my testing.
My idea was to build upon this to do component testing & then reuse these
stuff as I move higher in the chain to do sub system and system testing.

I was planning on doing something like this.
I am taking an auction example where we wanted to test a ( auction creation
/ bidding )scenario

So let's say we wanted to create company, users, set up an auction, Bid on
the auction, Approve Winner.

So in this case a Scenario specification Definition file could look like

CreateCompany <DataFile to Use>
create Users<DataFile to Use>
Create Auction<DataFile to User>
Bid1<DataFile to User>
Bid2<DataFile to Use>
<parallel>
Bid3<DataFile to Use>
..
Bidn<DataFile to Use>
<parallel>

ApproveWinner<DataFile to Use>

The above file could be XML  or csv.
Probably it needs more parameters like expected result from this step etc.

For each of the activities( each step in the scenario file ) there is a
executeActivity meta data file which is registered with the engine which
tells the test engine what it needs to do when it encounters a specific
activity
So for CreateCompany activity this file would specify something like
execute create() method com.mycompany.auction.Company object .

Now using jave reflection the test engine can go and execute this method
with the data being read from the datafile specified to it from the scenario
file .

One thing I have to think in detailed is how do I chain these activities
pass results from one activity to another one etc. Might be we can have a
vector of objects passed from one activity to another.

There are some engine specific tags like <parallel> which indicate that all
the steps embedded in those tags should be run con currently.

Advantages of having such a engine are
Theritically we just identify the activities in a product & specify the
execution details for this activity and we are ready to go.


My questions to you all is
Can I use Cactus to achive some thing like this.
Is there a commercial or open source tool to achieve something like this.


Thanx

Rajesh


_________________________________________________________________
Join the world's largest e-mail service with MSN Hotmail.
http://www.hotmail.com


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



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

Reply via email to