2008-10-11 13 views

Antwort

14

cspec ist für C. Vermutlich wird es mit C++ funktionieren. Es gibt eine Liste von Tools für verschiedene Sprachen auf der Behavior Driven Development Wikipedia page.

+0

Warum wird dies über cppspec unten gewählt? –

+4

Möglicherweise weil ein Satz nützlicher ist als ein einzelnes Wort. – kurige

+1

Weil er zuerst und mit einem zusätzlichen Link mit vielen Informationen antwortete. – srboisvert

4

Der ursprüngliche Link (CppSpec) ist tot, aber es ist immer noch zugänglich unter der Internet Archive um CppSpec.

Und wie @VickyChijwani bereits erwähnt, gibt es eine Kopie des Projektes an Github - tpuronen/cppspec

+4

Die Verbindung ist unterbrochen. Ist https://github.com/tpuronen/cppspec das gleiche Projekt? –

+0

Es scheint das gleiche zu sein. Sowohl das Github-Repository als auch [CppSpec] (Internet-Archiv) sind von Timo Puronen signiert (https://web.archive.org/web/20080208105001/http://www.laughingpanda.org/projects/cppspec/). –

4

Es scheint, dass Sie Ihren C-Code testen Ruby und RSpec mit swig mit Wrapper zu generieren! Siehe Ben Mabeys Beitrag hier: http://benmabey.com/2007/09/09/bdd-your-c.html

Ich habe dieses Beispiel ausprobiert und es hat für mich funktioniert. Ich bin mir nicht sicher, ob jemand es weiter gemacht hat.

2

Versuchen Sie CBehave! Es ist ein RSpec-ähnliches BDD-Framework, das gegebene/wann/dann-Makros verwendet. Beispiel:

FEATURE(1, "strstr") 
    SCENARIO("The strstr finds the first occurrence of the substring in the source string") 

     GIVEN("A source string: [Lionel Messi is a great football player]") 
      char *str = "Lionel Messi is a great football player"; 
     GIVEN_END 

     WHEN("we use strstr to find the first occurrence of [football]") 
      char *p = strstr(str, "football"); 
     WHEN_END 

     THEN("We should get the string: [football player]") 
      SHOULD_STR_EQUAL(p, "football player"); 
     THEN_END 
    SCENARIO_END 
FEATURE_END 
2

Da ein RSpec wie Rahmen angefordert wurde, möchte ich die letzten igloo hinzuzufügen. Obwohl ursprünglich auf die Context/Spec-Syntax abgestellt, unterstützt sie auch die Describe/It-Syntax. Es gibt nicht viel Lärm beim Einstellen des Testlaufs und der Testvorrichtungen wie in diesen C-basierten Gerüsten. Es fühlt sich sogar besser an, als CppSpec zu betrachten. Sie erreichen dies durch eine anständige Templating-Mechanik.

3

Igloo ist ein freue ich mich einige Zeit

+0

es scheint keine der Eigenschaften von Gurke noch Fitnesse zu haben, der Test ist immer noch im Code und es ist nicht lesbar/editierbar von Tester oder Business Analyst. –