We still should. But in this case it will be faster.

--Yakov

2015-09-20 20:51 GMT+03:00 Sergi Vladykin <sergi.vlady...@gmail.com>:

> Vladimir,
>
> Setting setLocalHost to 127.0.0.1 with shared ipfinder did not help me much
> on my mac, at least on tests with awaitPartitionMapExchange.
>
> As far as I understand we don't need to do awaitPartitionMapExchange when
> starting cache dynamically on stable topology?
>
> Sergi
>
> 2015-09-20 14:25 GMT+03:00 Sergey Kozlov <skoz...@gridgain.com>:
>
> > +1 Sergi idea
> >
> > Create/destroy cache with unique names should be enough to isolated test
> > logic.
> > If failed test case depends  which tests were executed (or weren't
> > executed) earlier the it means a bug or non-determenistic test code.
> >
> > ---------- Forwarded message ----------
> > From: Dmitriy Setrakyan <dsetrak...@apache.org>
> > Date: Sun, Sep 20, 2015 at 1:46 PM
> > Subject: Re: Nodes starts in tests
> > To: dev@ignite.apache.org
> >
> >
> > On Sun, Sep 20, 2015 at 1:34 PM, Branko Čibej <br...@apache.org> wrote:
> >
> > > On 20.09.2015 10:11, Yakov Zhdanov wrote:
> > > > Very cool idea! However this will not be working in 100% cases since
> > > > sometimes we need custom grid configurations, SPIs, etc, but for
> > > > significant number of tests this will work.
> > >
> > > This is actually, IMO, a very bad idea. One of the most important
> > > principles when designing tests is that each test case should be
> > > independent of others. In practice that means that if you run test
> cases
> > > in random order, their results should always be the same. If a test
> case
> > > depends on a particular way the grid is started up, then moving the
> grid
> > > startup outside the test case will introduce dependencies between test
> > > cases that could hide bugs.
> > >
> > > The primary goal of a test suite is not to be efficient and fast but to
> > > be accurate.
> > >
> >
> > Brane, if we test cache behavior (which we do a lot), it is enough to
> > create/destroy caches using the same node in each test, rather than
> > start/stop the node itself. Every test should use its own instance of
> > cache, thus not depending on other tests or test order.
> >
> > I believe that this will speed up test execution in many cases.
> >
> > D.
> >
> >
> > >
> > > -- Brane
> > >
> > >
> > > > 2015-09-20 11:00 GMT+03:00 Sergi Vladykin <sergi.vlady...@gmail.com
> >:
> > > >
> > > >> Guys,
> > > >>
> > > >> A little observation. We have really many tests which start and stop
> > > nodes
> > > >> for each test method.
> > > >> Example is IgniteCacheAbstractQuerySelfTest, it contains about 30
> test
> > > >> methods and 3 subclasses.
> > > >> In beforeTest method it starts nodes in afterTest it stops them,
> while
> > > >> cache setup is the same.
> > > >>
> > > >> What I'm trying to say is that each test method itself takes
> > > milliseconds
> > > >> to run, but grid start/stop takes* more than 5 seconds* for each
> test
> > > >> method. So from the standpoint of time we are testing grid
> start/stop
> > > all
> > > >> the time. It is not surprising that our tests take very long time to
> > > >> finish.
> > > >>
> > > >> Since we already support dynamic cache start/destroy which are much
> > more
> > > >> fast than grid start/stop,
> > > >> I think we should go through a refactoring and use existing nodes
> > > within a
> > > >> suite as much as possible.
> > > >> I believe this can reduce run time of cache related tests like 10
> > times.
> > > >>
> > > >> Sergi
> > > >>
> > >
> > >
> >
> >
> >
> > --
> > Sergey Kozlov
> >
>

Reply via email to