Was put on hold at stack overflow: hopefully it has value here.

I want to use a BDD / TDD / ATDD approach in c++. However I really want to emphasize vertical slices of end to end functionality rather than unit tests. There are plenty of unit testing frameworks.

How would you go about in c++ authoring an approach that emulates a user story based testing framework. If you can avoid reinventing the wheel great otherwise i have no idea how to go about writing one from scratch.

An example from another language would be specflow.

The specific question is - if someone has done it lets use their work - otherwise how would you go about writing a framework like specflow in c++?

  • Is this just about recommending a tool (we close those) or is it about an abstracted strategy? – david.pfx Jun 16 '14 at 14:25
  • No one tool would answer the question, i'm looking for a workflow - or building one - that enables me to work in c++ from tests much like i could do with tools such as resharper, visual studio and specflow in combination with frameworks like moq. – John Nicholas Jun 16 '14 at 16:58
up vote 2 down vote accepted

Use Cucumber CPP which gives you Cucumber support for C++.

  • Cool, yeah this is probably the choice. I had a quick look and didnt find an answer i don't suppose you know offhand what its vs integration is like? – John Nicholas Jun 16 '14 at 12:53
  • Acceptance tests check that the functionality of your program matches some set of specified requirements. Integration tests check that some components within your program work together as expected. Unit tests on the other hand check that those components work in isolation as expected. – Oliver Weiler Jun 16 '14 at 13:05
  • oh lol sorry by vs i meant visual studio. Sorry my bad, terrible context :D – John Nicholas Jun 16 '14 at 13:34

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.