Done here : http://tinyurl.com/2voxna
Jacques De : "Jacques Le Roux" <[EMAIL PROTECTED]> > Thanks Ashish (and Peter in 1st place ;o) > > I will put this in "my" FAQ > > Jacques > > De : "Ashish Vijaywargiya" <[EMAIL PROTECTED]> > > Hi , > > > > Before few days I had asked questions on Selenium test cases. > > I had included the email address of Peter Goron in that email. > > I got excellent reply from him so thought to share with community memeber. > > > > Peter, > > Thanks for your kind reply. > > I am sharing the contents of your email on the mailing list.I hope it won't > > be of any problem for you. > > I will get back to you with more questions :-) > > > > Here is the contents of Peter's reply : > > --------------------------------------------------------------------------------------------------------------------------- > > Hi Ashish, > > > > My answers are inline. > > > > > > > Dear Peter, > > > > > > Thanks for your kind reply. > > > I was waiting for reponse on this topic. > > > But I thought that you would be busy so didn't ping you again. > > > > > > > >> > Ashish Vijaywargiya sent the following on 7/15/2007 10:32 AM: > > >> > > Hi, > > >> > > > > >> > > We are trying to prepare selenium test cases on Ofbiz for > > >> > client > > >> > > demonstration. > > >> > > We are facing some issues with those test cases. > > >> > > > > >> > > 1) For running "successive" test cases I used browser > > >> > "Refresh" button > > >> > > but I > > >> > > think there might be some better option to handle this. > > >> > > Is there any option exists in Selenium IDE ?? > > I'm not sure to understand what you try to do. > > > > If you want to chain execution of different tests, there is the notion of > > test suite. A list of tests to run one after the other (see > > > http://labs.libre-entreprise.org/plugins/scmcvs/cvsweb.php/ofbizNeogia/neogia/manufacturing/webapp/manufacturing/tests/ManufacturingTestSuite.html?rev=1.9;content-type=text%2Fplain;cvsroot=neogia > > ) > > > > Otherwise if you just want to replay the same test in a loop, I'm not > > aware of a such feature in selenium. Bur if the loop is finite, you can > > achieve a similar result by using a test suite that refers x times the > > same test. > > > > >> > > 2) Suppose I have a condition to create the new user each > > >> > time. > > >> > > As I can put the value of user login say "user1" for the > > >> > first time but > > >> > > when > > >> > > this test case runs second time it generates error (It hangs > > >> > up in > > >> > > between). > > >> > > So Is there any option to put a "counter" or Javascript code > > >> > in the Test > > >> > > cases so I could create the "user2" when this test case runs > > >> > second time ?? > > > > The general problem behind you issue is how to run a test multiple times > > wihtout risking duplicated primary keys or having to remove all data > > created by the test. > > > > One solution is to always create business objects with different > > identifiers. Selenium provides a nice feature to do that: > > you can define variables during the test execution and use them anywhere > > in the test script after their creation. > > > > Here an example based on one of my test > > ( > > > http://labs.libre-entreprise.org/plugins/scmcvs/cvsweb.php/ofbizNeogia/neogia/manufacturing/webapp/manufacturing/tests/TestCreateNomenclature.html?rev=1.6;content-type=text%2Fplain;cvsroot=neogia > > ) > > > > <!-- create a variable named uid that contains an unique identifier --> > > <tr> > > <td>store</td> > > <td>javascript{(new Date()).getTime() % 10000}</td> > > <td>uid</td> > > </tr> > > > > > > <!-- use of the variable named uid to fill a form entry --> > > <tr> > > <td>type</td> > > <td>partyId</td> > > <td>user-${uid}</td> > > </tr> > > - Show quoted text - > > > > > > >> > > 3) What is the difference between click and clickAndWait ?? > > >> > > I would like to understand why I'm getting different > > >> > behaviors from click > > >> > > and clickAndWait functions. Here is the scenario: > > >> > > I want to perform the login and then verify some text on the > > >> > page (what > > >> > > should be pretty straight forward...) My first approach was > > >> > using the click > > >> > > function + pause function. Something like below: > > >> > > > > >> > > <tr> > > >> > > <td>click</td> > > >> > > <td>submit</td> > > >> > > <td></td> > > >> > > </tr> > > >> > > > > >> > > <tr> > > >> > > <td>pause</td> > > >> > > <td>3000</td> > > >> > > <td></td> > > >> > > </tr> > > >> > > > > >> > > The approach above worked fine and I was able to proceed > > >> > with my test. > > >> > > However, I was looking the clickAndWait functionality and, > > >> > per my > > >> > > understanding, this function should have a simlar behavior > > >> > to my code > > >> > > above.. then I wrote the following: > > >> > > > > >> > > <tr> > > >> > > <td>clickAndWait</td> > > >> > > <td>submit</td> > > >> > > <td></td> > > >> > > </tr> > > >> > > > > >> > > The code above is getting a "Permission Denied" message. I > > >> > already check > > >> > > the > > >> > > URLs and I'm not launching a different domain (before I > > >> > click I have > > >> > > http://domain/Login/ and after the submission I have > > >> > http://domain/App/). > > > > I think the right solution is to use clickAndWait command instead of > > click+pause because it always success contrary to click+pause (we dont > > known the page response time). > > > > I see no reason why you don't observe the same behavior with clickAndWait. > > Maybe it's because your are testing the login page that can be a little > > tricky to test due to the session handling. > > > > To be sure to always start a test in a clean session, my tests always do > > the same actions : > > 1. logoff > > 2. login > > 3. check error > > > > Here, an example of my standard login procedure under selenium from > > ( > > > http://labs.libre-entreprise.org/plugins/scmcvs/cvsweb.php/ofbizNeogia/neogia/manufacturing/webapp/manufacturing/tests/TestProcessRouting.html?rev=1.2;content-type=text%2Fplain;cvsroot=neogia > > ) > > <!-- Begin of standard login procedure --> > > <tr> > > <td>open</td> > > <td>/manufacturing/control/logout</td> > > <td></td> > > </tr> > > <tr> > > <td>type</td> > > <td>USERNAME</td> > > <td>admin</td> > > </tr> > > <tr> > > <td>type</td> > > <td>PASSWORD</td> > > <td>ofbiz</td> > > </tr> > > <tr> > > <td>select</td> > > <td>locale</td> > > <td>value=fr</td> > > </tr> > > <tr> > > <td>clickAndWait</td> > > <td>submitButton</td> > > <td></td> > > </tr> > > <tr> > > <td>assertElementNotPresent</td> > > <td>//[EMAIL PROTECTED]'errorMessage']</td> > > <td></td> > > </tr> > > <!-- End of standard login procedure --> > > > > > > > > Best regards, > > > > Peter Goron > > -------------------------------------------------------- > > > > On 7/15/07, Ashish Vijaywargiya <[EMAIL PROTECTED]> > > wrote: > > > > > > Hi, > > > > > > We are trying to prepare selenium test cases on Ofbiz for client > > > demonstration. > > > We are facing some issues with those test cases. > > > > > > 1) For running "successive" test cases I used browser "Refresh" button but > > > I think there might be some better option to handle this. > > > Is there any option exists in Selenium IDE ?? > > > > > > 2) Suppose I have a condition to create the new user each time. > > > As I can put the value of user login say "user1" for the first time but > > > when this test case runs second time it generates error (It hangs up in > > > between). > > > So Is there any option to put a "counter" or Javascript code in the Test > > > cases so I could create the "user2" when this test case runs second time > > > ?? > > > > > > 3) What is the difference between click and clickAndWait ?? > > > I would like to understand why I'm getting different behaviors from click > > > and clickAndWait functions. Here is the scenario: > > > I want to perform the login and then verify some text on the page (what > > > should be pretty straight forward...) My first approach was using the > > > click > > > function + pause function. Something like below: > > > > > > <tr> > > > <td>click</td> > > > <td>submit</td> > > > <td></td> > > > </tr> > > > > > > <tr> > > > <td>pause</td> > > > <td>3000</td> > > > <td></td> > > > </tr> > > > > > > The approach above worked fine and I was able to proceed with my test. > > > However, I was looking the clickAndWait functionality and, per my > > > understanding, this function should have a simlar behavior to my code > > > above.. then I wrote the following: > > > > > > <tr> > > > <td>clickAndWait</td> > > > <td>submit</td> > > > <td></td> > > > </tr> > > > > > > The code above is getting a "Permission Denied" message. I already check > > > the URLs and I'm not launching a different domain (before I click I have > > > http://domain/Login/ and after the submission I have http://domain/App/). > > > > > > > > > I know that so many persons are using Selenium IDE since very long. > > > I am also looking at Selenium Forum for help but early help from Ofbiz > > > community members would be greatly appreciated. > > > > > > -- > > > Thanks & Regards > > > Ashish Vijaywargiya > > > Indore , India > > > > > > > > -- > > Thanks & Regards > > Ashish Vijaywargiya > > Indore, India > >
