[Python-Dev] unittest's redundant assertions: asserts vs. failIf/Unlesses
solipsis at pitrou.net
Sun Jul 13 14:25:35 CEST 2008
Andrew Bennetts <andrew-pythondev <at> puzzling.org> writes:
> On the other hand, “assert*” names are positive statements of what the
> behaviour of the system-under-test is. And conversely, “fail*” names are a
> bit like implementation details of how the test is written. So I personally
> have a mild preference for the assert* names.
The problem with "fail*" is that you get names like "failIfNotEqual" (or perhaps
even "failUnlessNotEqual") which are double negatives and therefore much more
annoying to read and decipher. I always had the same problem when reading Perl's
"unless" statements. They are, IMO, useless complication.
"assert*" names are, well, assertive :-)
(not to mention "assert" is a widely established name in various languages -
including Python - for checking that things went as expected)
More information about the Python-Dev