Question

J'aime le style de développement Ruby RSpec BDD. Existe-t-il de bons outils pour le faire avec C / C ++?

Était-ce utile?

La solution

cspec est destiné à C. Il est probable que cela fonctionne avec C ++. Une liste d’outils pour différentes langues figure sur la page sur le développement fondé sur le comportement .

Autres conseils

Il semble que vous puissiez tester votre code C en utilisant Ruby et RSpec en utilisant swig pour générer des wrappers! Voir le post de Ben Mabey ici: http://benmabey.com/2007/09/09/bdd- votre-c.html

J'ai essayé cet exemple et cela a fonctionné pour moi. Je ne sais pas si quelqu'un a poussé plus loin.

Le lien d'origine ( CppSpec ) est mort, mais il est toujours accessible à <. a href = "https://archive.org/web/" rel = "nofollow noreferrer"> Archives Internet à CppSpec .

Et, comme @VickyChijwani l'a déjà mentionné, il existe un exemplaire du projet à l'adresse Github - tpuronen / cppspec .

Igloo est celui que j'espère essayer un peu de temps

Puisqu’un cadre semblable à RSpec a été demandé, j'aimerais ajouter le récent igloo . Bien que visant à l'origine la syntaxe Context / Spec, il prend également en charge la syntaxe Describe / It. Il n'y a pas beaucoup de bruit dans la configuration du coureur de test et des montages de test, comme dans les frameworks basés sur C. Il est même préférable de regarder que CppSpec. Ils y parviennent en utilisant des mécanismes de modélisation décents.

Essayez CBehave ! Il s’agit d’un framework BDD de type RSpec qui utilise des macros données / quand / then. Exemple:

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
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top