On May 17, 2010, at 11:13 AM, Sergiu Dumitriu wrote:

> On 05/17/2010 08:13 AM, Vincent Massol wrote:
>> 
>> On May 17, 2010, at 2:34 AM, sdumitriu (SVN) wrote:
>> 
>>> Author: sdumitriu
>>> Date: 2010-05-17 02:34:18 +0200 (Mon, 17 May 2010)
>>> New Revision: 28901
>>> 
>>> Modified:
>>>   
>>> enterprise/trunk/distribution-test/ui-tests/src/test/it/org/xwiki/it/ui/EscapeTest.java
>>> Log:
>>> [misc] Added a test.
>>> 
>>> Modified: 
>>> enterprise/trunk/distribution-test/ui-tests/src/test/it/org/xwiki/it/ui/EscapeTest.java
>> 
>> [snip]
>> 
>>> +    /**
>>> +     * Go to a working page after each test run to prevent failures in 
>>> {...@link #setUp()}
>>> +     */
>>> +    @After
>>> +    public void tearDown()
>>> +    {
>>> +        TestUtils.gotoPage("Main", "WebHome", getDriver());
>>> +    }
>> 
>> It's a little bit better to do this in setUp rather than in tearDown, for 
>> performance (Each test is responsible to set up a working state).
> 
> It's not about setting up for the tests in this class, but leaving a 
> working page for the next (whatever, unknown) test. It's not a common 
> requirement, but this particular test might leave a broken page, like a 
> missing header, thus causing the is logged in check to fail.

Yes, but it's better that the next test ensures that the environment is ok for 
its tests IMO. This allows to run tests in any order and even to work if a test 
is stopped midway.

> Why do you say it's bad for performance?

It's actually good in the sense that the next test doesn't necessarily have to 
do a set up (but this means that the tests can only be executed in a given 
order).

The reason I was saying it's a bit less good re perf is because you're going to 
do extra work (the last tearDown executed) even if the next tests doesn't care 
about what you did in the tear down.

-Vincent
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to