Dieter Maurer wrote:
> Tres Seaver wrote at 2009-3-13 16:20 -0400:
>> ...
>> Dieter Maurer wrote:
>>> Tres Seaver wrote at 2009-3-12 14:25 -0400:
>>>> ...
>>>> Sorry, I meant "mandatory tests which load ZCML."  I'm actually against
>>>> ever loading ZCML in tests at all.
>>> If you ship ZCML, you should test it, no?
>> Not necessarily:  in fact, if testing it means that users of my package
>> have to accept a big dogpile of dependencies that they otherwise
>> wouldn't need to, then no.
> Your and my quality principles diverge:
>   If I release a package, then its tests have the verify that
>   the package contents work correctly.
>   This implies: the tests should cover everything the package delivers
>   including delivered ZCML files and optional features.
>   The tests are my tool (as developper of the package) to help me
>   find and fix errors before the release.
>   I am completely uninterested to facilitate testing of reduced or
>   otherwise special use of my packages. If the full tests pass then a reduced
>   use should work as well (provided the integrator did everything right).
>   If the user is interested to verify for his own that the tests pass,
>   I expect of him to test the full functionality -- or not use
>   the package at all.
> To stress it: the above just describes test requirements -- not "install"
> requirements. I am ready to support loose install requirements
> (and use "extras" to support optional features) but I am not
> ready to invest in loose test requirements.

As a frequent recipient of Tres' wrath when things go  untested, I can vouch
that Tres is definitely interested in comprehensive test coverage. ;-)

I think the point is that some ZCML he ships might be "example" ZCML which he
has previously tested interactively.  Like, say, a configuration snippet within
a README.txt.

I think maybe the lesson here is: think very carefully before you release a
package with any ZCML in it that you want to be a "library"; if users *need* to
load the ZCML, it's probably really not a library, it's probably an application.
 If you're OK with it being an application, then by all means, you should have
automated end-to-end tests.  But if you really mean it to be a library, the ZCML
should be "advisory" (close to documentation), I don't see a problem with not
doing any automated testing of it if that means the package doesn't have
inappropriate dependencies.

- C
Zope-Dev maillist  -
**  No cross posts or HTML encoding!  **
(Related lists - )

Reply via email to