Использование драгоценных камней с MacRuby

Легко поместить всю вину на “ управление ” Но управление действительно сообщение, Вы к конкретно не делаете какое-либо поблочное тестирование?

управление в целом не делает (и вероятно не должен) говорить Вам, как сделать Ваше задание, является ли это модуляризацией, абстрактными типами данных, шаблонами разработки или поблочным тестированием. Это инструменты торговли, которую применяет успешный, компетентный разработчик программного обеспечения, но бедный инженер не делает.

я думаю, что реальный ответ на Ваш вопрос: поблочное тестирование является действительно трудным, и студенты информатики не обучены ему.

легко, когда Вы пишете свой собственный строковый класс. При тестировании реального продукта Вы сталкиваетесь с проблемами, о которых никто не сказал Вам в слайдах powerpoint:

  • Взаимодействие с пользователем. Половина Вашего приложения является логикой пользовательского интерфейса. Как Вы тестируете его автоматизированным способом, который не ломается, если Вы перемещаете кнопку?
  • Взаимодействие с внешними API и платформами. Если Вы пишете драйвер ядра Windows, как делают Вас модульный тест это? Вы пишете тупики для каждого IRP и функции ядра, которую Вы используете, эффективно создавая моделирование ядра ОС?
  • Сетевая связь вещь 21-го века. Как Вы координируете модульный тест, состоящий из нескольких распределенных компонентов?
  • , Как Вы выбираете хорошие тестовые сценарии? Я обычно вижу, что люди пробуют “ сделайте случайные вещи в цикле 1 000 повторений и посмотрите если он breaks” подход. Когда Вы делаете это, усилие выше, чем возвраты, важные ошибки пропущены, и от поблочного тестирования отказываются.
  • , Как Вы тестируете это, требования к производительности встречены?
  • Знание шаблонов в тестировании недостаточно: тупики, консервированные ответы, регрессионное тестирование является понятиями, которые не знает большинство людей. Сколько в Вашем месте работы на самом деле читает книгу о поблочном тестировании?

одна вещь, в которой мы можем обвинить управление, состоит в том, что спецификации требований редко содержат любые требования к уровню качества поставляемого компонента.

В следующий раз Ваш босс просит, чтобы Вы сделали временную оценку, включали время для записи модульного теста и видели то, что происходит.

15
задан Craig Williams 17 October 2009 в 20:27
поделиться

4 ответа

Сборщик драгоценных камней Иегуда Каца - очень хороший вариант ИМХО:

http://github.com/wycats/bundler

В любом случае,есть много других вариантов, таких как создание каталога vendor / в вашем пакете приложений, добавление каждого подкаталога vendor в путь поиска библиотеки ruby ​​в rb_main.rb :

$:.unshift File.join(File.dirname(__FILE__), 'vendor/rest-client/lib')
$:.unshift File.join(File.dirname(__FILE__), 'vendor/crack/lib')
require 'rest-client'
require 'crack'

Я использую второй подход здесь:

http://github.com/rubiojr/canasto

5
ответ дан 1 December 2019 в 04:01
поделиться

Первому пользователю нужно будет установить гем:

$ sudo gem install gem_name

затем просто потребуйте это в вашей программе, вам также придется потребовать 'rubygems':

require 'rubygems'
require 'gem_name'
-5
ответ дан 1 December 2019 в 04:01
поделиться

Чтобы использовать драгоценные камни в проекте MacRuby, вам необходимо использовать:

$ sudo macgem install gem_name

Пока не все драгоценные камни совместимы с MacRuby.

12
ответ дан 1 December 2019 в 04:01
поделиться

Драгоценные камни, написанные на C, пока что нельзя использовать в MacRuby. Итак, пока нет nokogiri .

Для упаковки драгоценных камней только что выпущенная бета-версия MacRuby 0.5 включает инструмент macrubyc , который упаковывает фреймворк MacRuby внутри вашего пакета. Они также добавили поддержку для выполнения этого прямо из Xcode всего за один шаг.

2
ответ дан 1 December 2019 в 04:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: