|
Boost : |
From: Dean Michael Berris (mikhailberis_at_[hidden])
Date: 2006-09-15 21:07:11
Hi Joel!
On 9/16/06, Joel de Guzman <joel_at_[hidden]> wrote:
>
> The question is how BDD can help write code that clearly reflects the
> algorithms involved. Try the simple for_each, see if you can convince
> me. Then try a more elaborate algorithm, say, quicksort. See if you
> can capture the essence of the algorithm in BDD.
>
I think there's a blurring between the use of documentation and
specification here. Let me try to clarify a few things as to what BDD
wants to be able to achieve:
* Write Specification Suites for validating program behaviour :: In
lieu of calling these specification suites "test suites".
* Allow for writing programmatic specifications for systems,
subsystems, components, and "units" :: in liew of calling them system
level tests, integration tests, and unit tests
BDD does not aim to remove external documentation, but it does aim to
make the specification process programmatically consistent with
natural language.
Instead of "Unit Testing" you have "Behavior Specification".
Contrasting `ASSERT_EQUAL(_expected, _value)' with
`value(_value).should.equal(_expected)'. It's really just that simple.
;-)
-- Dean Michael C. Berris C++ Software Architect Orange and Bronze Software Labs, Ltd. Co. web: http://software.orangeandbronze.com/ email: dean_at_[hidden] mobile: +63 928 7291459 phone: +63 2 8943415 other: +1 408 4049532 blogs: http://mikhailberis.blogspot.com http://3w-agility.blogspot.com http://cplusplus-soup.blogspot.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk