You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ant.apache.org by Russell Gold <ru...@gmail.com> on 2004/11/16 18:33:54 UTC
task testing style?
The tests I have looked at in ant appear mostly to use a semi-
functional test style: they use xml to define a task, run it, and then
check some results (which may simply be the lack of an error). I am
used to a more unit testing style, in which external classes or
subsystems are stubbed out. For example, for my dependencies task, I
want to confirm that a dependency is downloaded only if it is not
already present, which I do by mocking the fetch mechanism. Is this
approach being used somewhere in ant? Has there been any discussion of
the two approaches to testing?
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org
Re: task testing style?
Posted by Erik Hatcher <er...@ehatchersolutions.com>.
Both styles of testing have their merits. There are some mock objects
in Ant's test infrastructure (MockBuildListener, for example).
The most important thing, of course, is that tests are created that
ensure that the production code is working as it should. Sure, there
are more moving parts in the functional-style. Ideally there would be
all flavors of testing in place to ensure all levels are functioning
appropriately.
There are certainly no objections about incorporating more mock-style
testing into Ant's codebase. The more testing the better!
The dilemma I've encountered when folks catch on to mock unit testing
is that they get carried away with it and try to mock too much
functionality rather than keeping it focused, at which point you end up
with mock objects that are so complex that they require their own unit
tests :)
Erik
On Nov 16, 2004, at 12:33 PM, Russell Gold wrote:
> The tests I have looked at in ant appear mostly to use a semi-
> functional test style: they use xml to define a task, run it, and then
> check some results (which may simply be the lack of an error). I am
> used to a more unit testing style, in which external classes or
> subsystems are stubbed out. For example, for my dependencies task, I
> want to confirm that a dependency is downloaded only if it is not
> already present, which I do by mocking the fetch mechanism. Is this
> approach being used somewhere in ant? Has there been any discussion of
> the two approaches to testing?
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
> For additional commands, e-mail: dev-help@ant.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org