Running tests in MCMethodDefinitionTest

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Running tests in MCMethodDefinitionTest

Torsten Bergmann
Hi,

a little story: while working on cleaning up MCMethodDefinitionTest (see https://pharo.fogbugz.com/f/cases/20830)
I noticed that from time to time you have trouble when running the test methods in this class one after the other
several times. So sometimes it worked and sometimes not.

I wondered since the latest Pharo 7 build #70360 is definitely green on CI, so the tests seem to work.

After investigating I've noticed that in  MCMethodDefinitionTest>>tearDown a package "FooBarBaz" which
is used during the tests is unregistered and (when you run another test from this suite right afterwards)
is not found anymore. Because in the test initialization it is not.

This is easily fixed with setting the package up in the #setUp method which is unregistered in #tearDown
and one can easily run the tests several times independently.

So if one had trouble in Pharo 6 and Pharo 7 with sporadic fails in Monticello tests this might have been
the cause.

The fix is part of PR https://github.com/pharo-project/pharo/pull/583

Bye
T.


Reply | Threaded
Open this post in threaded view
|

Re: Running tests in MCMethodDefinitionTest

Marcus Denker-4
Very nice! I am reviewing  the change now.

Thanks,

                Marcus

> On 6 Dec 2017, at 23:42, Torsten Bergmann <[hidden email]> wrote:
>
> Hi,
>
> a little story: while working on cleaning up MCMethodDefinitionTest (see https://pharo.fogbugz.com/f/cases/20830)
> I noticed that from time to time you have trouble when running the test methods in this class one after the other
> several times. So sometimes it worked and sometimes not.
>
> I wondered since the latest Pharo 7 build #70360 is definitely green on CI, so the tests seem to work.
>
> After investigating I've noticed that in  MCMethodDefinitionTest>>tearDown a package "FooBarBaz" which
> is used during the tests is unregistered and (when you run another test from this suite right afterwards)
> is not found anymore. Because in the test initialization it is not.
>
> This is easily fixed with setting the package up in the #setUp method which is unregistered in #tearDown
> and one can easily run the tests several times independently.
>
> So if one had trouble in Pharo 6 and Pharo 7 with sporadic fails in Monticello tests this might have been
> the cause.
>
> The fix is part of PR https://github.com/pharo-project/pharo/pull/583
>
> Bye
> T.
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Running tests in MCMethodDefinitionTest

Nicolas Cellier
Thanks, very good find!
I reviewed the PR yesterday, all good to my eyes.
I backported the fix to Squeak where I just experienced the random failure when debugging opensmalltalk-vm test failures
https://github.com/hpi-swa/smalltalkCI/issues/350

2017-12-07 13:53 GMT+01:00 Marcus Denker <[hidden email]>:
Very nice! I am reviewing  the change now.

Thanks,

                Marcus

> On 6 Dec 2017, at 23:42, Torsten Bergmann <[hidden email]> wrote:
>
> Hi,
>
> a little story: while working on cleaning up MCMethodDefinitionTest (see https://pharo.fogbugz.com/f/cases/20830)
> I noticed that from time to time you have trouble when running the test methods in this class one after the other
> several times. So sometimes it worked and sometimes not.
>
> I wondered since the latest Pharo 7 build #70360 is definitely green on CI, so the tests seem to work.
>
> After investigating I've noticed that in  MCMethodDefinitionTest>>tearDown a package "FooBarBaz" which
> is used during the tests is unregistered and (when you run another test from this suite right afterwards)
> is not found anymore. Because in the test initialization it is not.
>
> This is easily fixed with setting the package up in the #setUp method which is unregistered in #tearDown
> and one can easily run the tests several times independently.
>
> So if one had trouble in Pharo 6 and Pharo 7 with sporadic fails in Monticello tests this might have been
> the cause.
>
> The fix is part of PR https://github.com/pharo-project/pharo/pull/583
>
> Bye
> T.
>
>