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]>
