[Python-Dev] the role of assert in the standard library ?

Guido van Rossum guido at python.org
Fri Apr 29 00:07:10 CEST 2011


On Thu, Apr 28, 2011 at 2:53 PM, Raymond Hettinger
<raymond.hettinger at gmail.com> wrote:
>
> On Apr 28, 2011, at 1:27 PM, Holger Krekel wrote:
>
>> On Thu, Apr 28, 2011 at 6:59 PM, Guido van Rossum <guido at python.org> wrote:
>>> On Thu, Apr 28, 2011 at 12:54 AM, Tarek Ziadé <ziade.tarek at gmail.com> wrote:
>>>> In my opinion assert should be avoided completely anywhere else than
>>>> in the tests. If this is a wrong statement, please let me know why :)
>>>
>>> I would turn that around. The assert statement should not be used in
>>> unit tests; unit tests should use self.assertXyzzy() always.
>>
>> FWIW this is only true for the unittest module/pkg policy for writing and
>> organising tests. There are other popular test frameworks like nose and pytest
>> which promote using plain asserts within writing unit tests and also allow to
>> write tests in functions.  And judging from my tutorials and others places many
>> people appreciate the ease of using asserts as compared to learning tons
>> of new methods. YMMV.
>
> I've also observed that people appreciate using asserts with nose.py and py.test.

They must not appreciate -O. :-)

-- 
--Guido van Rossum (python.org/~guido)


More information about the Python-Dev mailing list