Мой mkmf.log показал, что gcc (мне кажется, 4.8.2) не понравился конкретный аргумент, который использовался атомарным в
$ gem install atomic
, поэтому у меня была очень похожая ситуация. Для меня ответом было обновить gcc / gcc-libs и lib.
Я использую Arch Linux, и только Arch Linux. Правильный способ сделать это - запустить
$ sudo pacman -Syu
, который обновляет все системные пакеты.
Я установил Rails и с тех пор не запускал системное обновление, откуда и возникла проблема. В большинстве других * nix дистрибутивов вы должны обновить до последней версии этих пакетов по имени, то есть с apt, это будет что-то вроде
$ sudo apt-get update
, за которым следует
$ sudo apt-get upgrade {package-name}
Вам также следует ознакомиться с SpecFlow , это проект с открытым исходным кодом для создания BDD с .NET.
SpecFlow использует тот же формат определения (Gherkin), что и огурец, но вы можете писать свои определения шагов в .NET. Он в основном генерирует классы модульных тестов (NUnit, MsTest, xUnit и т. Д.) Из ваших файлов функций, поэтому вы можете использовать тот же механизм выполнения модульных тестов, как и в случае с настоящими модульными тестами. Таким образом, также проще интегрировать функциональные тесты BDD в сборку интеграции.
В последних версиях SpecFlow имеет функцию подсветки синтаксиса для Visual Studio 2010 и поддержку Silverlight и Mono / MonoDevelop.
Конечно. Он называется Огурец . В каталоге Cucumber examples есть пример того, как протестировать код .NET, и документация в Cucumber Wiki для .NET и Mono .
Я написал сообщение в блоге, в котором подробно описал процесс, которым я следовал, чтобы запустить Cucumber с IronRuby: http://hotgazpacho.org/2009/06/cucumber-and-ironruby-it -runs /
Кажется, что в этом пространстве кажется 3 возможности:
Используйте огурец и Ironruby. Вот блог на некоторых шагах, чтобы начать с этим. Недостаток кажется производительностью. Я читал аккаунты, которые говорят, что его медленнее в целом , а другие, которые говорят, что это всего лишь действительно медленно раскрутит . Это далеко не окончательно, так как Ironruby все еще находится в активном развитии.
Использование CUKE4NUKE . Я слышал, что этот продукт рекомендовал несколько раз. На самом деле он использует регулярный рубин и огурец, но запускает ваш код .NET через сервер. К счастью, все, что осложнение прозрачно, так как вы его используете. CUKE4NUKE больше не под активным развитием.
Использование SPECLOW . Это .NET порт огурца. Из-за этого он может не иметь всех функций огурцов, и он может иметь дополнительные функции. Приятно, что вам не нужно установить Ruby.
В это время не кажется ясным, какой из них является лучшим вариантом. Лично я планирую начать с CUKE4NUKE.
Рассказчик несколько связан, даже если это не строго BDD. Кажется, он поддерживает несколько разных тестов, но написан в .NET. Читайте больше на Джереми Миллерс Блог
Также есть StoryQ. Это ориентированный на разработчиков подход к пользовательским историям, которые могут сообщать о клиентах. http://storyq.codeplex.com
StoryQ - это переносимая (одна dll), встроенная структура BDD для .NET 3.5. Он работает в существующем средстве выполнения тестов и помогает создавать удобные для человека результаты тестирования (html или текст). Свободный интерфейс StoryQ добавляет строгую типизацию, интеллект и документацию к вашей грамматике BDD.