Ответ 1
TypeMock слишком дорог для hobbist like me
Это, вероятно, тоже слишком дорого разрабатывать и выпускать бесплатно.
TypeMock слишком дорог для такого хоббиста, как я:)
Moq или следующая версия RhinoMocks не имеет планов по прослушиванию API профилирования, почему это?
EDIT: это позволяет использовать такие функции, как:
TypeMock слишком дорог для hobbist like me
Это, вероятно, тоже слишком дорого разрабатывать и выпускать бесплатно.
Declaimer Я работаю в Typemock.
Я постараюсь ответить на ваши вопросы:
Есть ли какой-либо open source mocking Framework, напоминающий TypeMock?
Единственная другая структура, использующая API-интерфейс профилирования, - это (коммерческий) JustMock.
Moq или следующая версия RhinoMocks не планируют слушать API профилирования, почему это?
Я думаю, что это идеология вопроса. Ayende создатель Rhino mocks и Kzu создатель moq верит в дизайн для тестирования, и эта насмешливая структура должна помочь вам достичь этого дизайна, чтобы они не реализовали функции Isolator, даже если это было легко.
TypeMock слишком дорог для hobbist like me
Если вы работаете из дома, вы можете купить более дешевую личную лицензию (я не хочу размещать ссылку на страницу покупки Isolator здесь, но я уверен, что вы ее можете найти.)
Надеюсь, что это поможет.
Если вы работаете с Open Source, вы можете получить бесплатную лицензию Typemock Isolator (но только для использования с ней).
Moq или следующая версия RhinoMocks не планируют слушать для API профилирования, почему это?
Потому что это очень, очень сложно и требует немного знания С++?
Потому что TypeMock полезен только в том случае, если вы тестируете код, который не был написан с возможностью проверки. Существует ограниченный набор обстоятельств, когда это полезно и, как правило, можно обойти.
Короче говоря, TypeMock полезен для программистов, которые:
Это делает это очень ценным для тех немногих людей, которым нужна эта функция, но для бесплатного программного обеспечения стоимость и преимущества сообщества очень низки.
Отъезд http://beanproxy.codeplex.com/. Это инструмент, который я разрабатывал в течение некоторого времени. Он еще не позволяет не виртуальные прокси (кроме абстрактных и интерфейсов) и не поддерживает живые объекты (проксирование живых объектов). Однако он бесплатный и с открытым исходным кодом. Он очень прост в использовании и продолжает развиваться (есть планы поддержки не виртуальных и живых объектов).
gkdm спросил меня, как я планирую добавить поддержку прокси для http://beanproxy.codeplex.com/ для статических и живых объектов, я отвечаю, что у меня нет идея как. Я изучил множество идей; ни одна из которых не выработалась. Самое близкое решение, которое у меня было, это создать библиотеку профилирования, но для этого потребуется, чтобы тестер запускал мою библиотеку в качестве профилировщика, и она не смогла бы просто запустить мою библиотеку с ее тестами. Я провел дни, читая и тестируя идеи, ничего не работало. Я отказался от этого поиска, но снова буду открыт для идей, если у кого-нибудь есть. Beanproxy по-прежнему является отличным инструментом, который используют многие разработчики. Используйте вкладки проблем и обсуждений на codeplex, если у вас есть какие-либо конкретные потребности или проблемы с beanproxy. Я всегда стараюсь улучшить его.
Я понимаю, что этот вопрос относится к миру .NET, но если кто-то задается вопросом, что существует в мире Java, я могу сказать, что ответ будет "да, есть".
Инструмент JMockit - это с открытым исходным кодом (лицензия MIT), и, если я не пропустил что-то, это еще более мощно, чем TypeMock. (В частности, я ничего не вижу в TypeMock, что было бы эквивалентно функциональности, предоставляемой с помощью аннотации @Capturing
в JMockit.)