Counting passed/failed unit tests

David Gileadi gileadis at NSPMgmail.com
Wed Oct 26 08:40:04 PDT 2011


On 10/25/11 4:04 AM, Jacob Carlborg wrote:
> On 2011-10-24 22:08, Jonathan M Davis wrote:
>> On Monday, October 24, 2011 11:23 Andrej Mitrovic wrote:
>>> I'm not sure why it just stops after the first failing unittest
>>> though. What is the point of that 'failed' counter?
>>
>> It's a long standing issue that when one unit test fails within a
>> module, no
>> more within that module are run (though fortunately, a while back it
>> was fixed
>> so that other modules' unit tests will still run). As I recall, there
>> had to
>> be a change to the compiler to fix it, but I don't known/remember the
>> details.
>> Certainly, the issue still stands.
>>
>> - Jonathan M Davis
>
> A workaround is to catch AssertErrors, hook it up with some library code
> and you get a minimal unit test framework:
> https://github.com/jacob-carlborg/orange/blob/master/orange/test/UnitTester.d
>
>
> Example of usage:
>
> https://github.com/jacob-carlborg/orange/blob/master/tests/Object.d

As an argument for continuing to run tests after one fails, I'm taking a 
TDD class and the instructor asserted that for unit tests you should 
generally only have one or two assertions per test method.  His 
reasoning is that when something breaks you immediately know the extent 
of your breakage by counting the number of failed methods.  This 
argument is pretty convincing to me.


More information about the Digitalmars-d mailing list