Есть ли хорошие инструменты BDD с открытым исходным кодом для C / C ++? [закрыто]
Вопрос
Мне нравится стиль разработки Ruby RSpec BDD. Есть ли хорошие инструменты для этого с C / C ++?
Решение
cspec предназначен для C. Предположительно, он будет работать с C ++. На странице Википедии по разработке, ориентированной на поведение , приведен список инструментов для разных языков .
Другие советы
Похоже, вы можете протестировать свой код на C, используя Ruby и RSpec, используя swig для генерации оболочек! Смотрите пост Бена Маби здесь: http://benmabey.com/2007/09/09/bdd- ваш-c.html
Я попробовал этот пример, и он сработал для меня. Я не уверен, что кто-то пошел дальше.
Исходная ссылка ( CppSpec ) устарела, но она по-прежнему доступна в < a href = "https://archive.org/web/" rel = "nofollow noreferrer"> Интернет-архив по адресу CppSpec .
И, как уже упоминалось @VickyChijwani, копию проекта можно найти по адресу Github - tpuronen / cppspec . р>
Igloo - это то, что я с нетерпением жду возможности попробовать некоторое время
Поскольку была запрошена среда, похожая на RSpec, я хотел бы добавить недавний igloo . Хотя изначально он был направлен на синтаксис Context / Spec, он также поддерживает синтаксис Describe / It. Не так много шума при настройке тестового бегуна и тестовых приспособлений, как в этих C-средах. Это даже лучше смотреть, чем CppSpec. Они достигают этого с помощью приличной шаблонной механики.
Попробуйте CBehave ! Это RSpec-подобный BDD-каркас, который использует заданные / когда / затем макросы. Пример: р>
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