Boost logo

Boost Users :

Subject: Re: [Boost-users] [test] testing protected/private methods out of testsuits
From: Patrick Loney (Patrick.Loney_at_[hidden])
Date: 2008-09-22 04:05:39


> I tried to test protected/private class methods by declaring the
test->case-class as a friend of the class-to-test.

Why are you trying to do this? In test driven development you should be
testing the interfaces not the internals, from Wikipedia:

"Some may object that using strict black box testing does not provide
access to private data and methods. This is intentional; as the software
evolves, you may find the implementation of a class changes
fundamentally. Remember a critical step of test-driven development is to
refactor. Refactoring may introduce changes which adds or removes
private members, or alters an existing member's type. These changes
ought not break existing tests. Unit tests that exploit glass box
testing are highly coupled to the production software; changing the
implementation of a class or module may mean you must also update or
discard existing tests, things which should never have to occur. For
this reason, glass box testing must be kept to the minimum possible.
White box testing should never be used in test-driven development."

Your private and protected methods should all be tested via calls to the
public methods.

******************************************************************************

"This message and any attachments are solely for the intended recipient and may contain confidential and privileged information. If you are not the intended recipient, any disclosure, copying, use, or distribution of the information included in this message and any attachments is prohibited. If you have received this communication in error, please notify us by reply e-mail and immediately and permanently delete this message and any attachments. Thank you."

Interactive Transaction Solutions Ltd (2473364 England)

Registered Office:
Systems House,
Station Approach
Emsworth PO10 7PW

**********************************************************************

Ce message électronique contient des informations confidentielles à l'usage unique des destinataires indiqués, personnes physiques ou morales. Si vous n'êtes pas le destinataire voulu, toute divulgation, copie, ou diffusion ou toute autre utilisation de ces informations, est interdite. Si vous avez reçu ce message électronique par erreur, nous vous remercions d'en avertir son expéditeur immédiatement par email et de détruire ce message ainsi que les éléments attachés.

Interactive transaction Solutions SAS- France (RCS Pontoise : 489 397 877)

Siège social :
Parc Saint Christophe,
10, Avenue de l’Entreprise
95865 Cergy-Pontoise Cedex

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net