browserEnvironment and the correct way to run unit tests?

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

browserEnvironment and the correct way to run unit tests?

TimM-3
What exactly is the BrowserEnvironment for? I see its in a refactoring
packages (I think thats what RB stands for) - so can imagine this is the
thing that is broken in R1 so that when you refactor a method in "package
only" and does it globaly anyway.

But then I notice that the unit test running menus - seem to use it (dolphin
V5 didn't do this) for running tests.

So I am guessing that the idea is that running tests in a package should
just run the tests in that package and not any loose method extensions? But
then is this overkill - if I am running the tests of something - isn't it
safer to run all of the tests, not just the ones in my package (I guess you
use this to separate slow and fast running tests - but its a bit non-obvious
to do it this way)?

Of course I could have totally missed the mark on this one?

I ask because I was going to post a little TestRunning hack - and noticed
that it doesn't work in D5 becuase it doesn't have a
#buildSuiteFromEnvironment:  method defined in TestCase but does have
#buildSuiteFromAllSelectors or #buildSuiteFromSelectors.

Which do people think is the preferred way to do this? Not having much
Dolphin history I'm not sure what people would expect.

Personally I like to run all tests regardless and my hack was something
someone here, helpfully passed on to me to press a keystroke to run all your
tests (enhanced to additionaly have ctrl-shift-0 run all the test cases in
your last package) and then press the key to jump back.

Tim


Reply | Threaded
Open this post in threaded view
|

Re: browserEnvironment and the correct way to run unit tests?

Blair McGlashan
"TimM" <[hidden email]> wrote in message
news:[hidden email]...
> What exactly is the BrowserEnvironment for? I see its in a refactoring
> packages (I think thats what RB stands for) - so can imagine this is the
> thing that is broken in R1 so that when you refactor a method in "package
> only" and does it globaly anyway.
>

The thing that is broken there is actually just a misformed cascade in the
code that sets up the environment, not the workings of the
BrowserEnvironment.

You can think of a BrowserEnvironment as a restricted view of the system, a
slice that contains only certain classes and methods.

> But then I notice that the unit test running menus - seem to use it
> (dolphin V5 didn't do this) for running tests.
>
> So I am guessing that the idea is that running tests in a package should
> just run the tests in that package and not any loose method extensions?
> But then is this overkill - if I am running the tests of something - isn't
> it safer to run all of the tests, not just the ones in my package (I guess
> you use this to separate slow and fast running tests - but its a bit
> non-obvious to do it this way)?

Well no, if you ask the IDE to run the tests in the package, then it should
run the tests in the package, not those defined elsewhere. If you want that
behaviour invoke the tests another way.

>
> Of course I could have totally missed the mark on this one?
>
> I ask because I was going to post a little TestRunning hack - and noticed
> that it doesn't work in D5 becuase it doesn't have a
> #buildSuiteFromEnvironment:  method defined in TestCase but does have
> #buildSuiteFromAllSelectors or #buildSuiteFromSelectors.
>
> Which do people think is the preferred way to do this? Not having much
> Dolphin history I'm not sure what people would expect.

Dolphin is moving towards the use of environments for all situations where
some filtered view of the system, or some selection from it, is required.

>...

Regards

 Blair