Pex и F # в Visual Studio 2010 Ultimate - PullRequest
       51

Pex и F # в Visual Studio 2010 Ultimate

5 голосов
/ 05 августа 2011

Я пытался использовать Pex в проекте F #, но столкнулся с несколькими проблемами, по которым я был бы признателен за помощь:

  1. Надстройка Visual Studio Pex работала в течение получаса, а не для комплексного изучения проекта.

  2. После этого каждый раз, когда я запускаю Pex Exploration из Visual Studio 2010, я получаю сообщение об ошибке !warning! [metadata] no explorations found after applying all filters; did you forget a [PexClass] or [PexMethod] attribute?. Если я копирую и вставляю команду, выполняемую Visual Studio при выполнении исследования, удаляю некоторые атрибуты (например, sourceFilter ...) и запускаю ее из командной консоли, тогда я получаю несколько сгенерированных тестов. Любая идея, почему Visual Studio генерирует недопустимую команду?

  3. Через некоторое время Microsoft.Pex.Framework.dll либо исчезает из списка ссылок .Net, и мне приходится ссылаться на него вручную, используя путь к файлу, или я даже больше не могу ссылаться на него, и мне приходится удалить / переустановить Pex. (A reference to C:\Program Files (x86)\Microsoft Moles\PublicAssemblie\Microsoft.Pex.Framework.dll could not be added. Please make sure that the file is accessible, and that it is a valid assembly or COM component.)

Все эти проблемы не возникают, когда я работаю над проектом на C #.

Проблемы 1 2 3 возникли с академической версией.

Используя версию, доступную для подписчика MSDN, я никогда не работал в Visual Studio (Visual Studio 2010 Ultimate NO SP1). Однако это работало из командной строки. Я не столкнулся с проблемой 3 с этой версией.

Кому-нибудь удалось заставить Пекса работать с F # в пределах Visual Studio? Если да, можете ли вы сказать мне, как вы это сделали? Какие версии (VS и Pex) вы используете?

1 Ответ

1 голос
/ 07 октября 2011

У меня был некоторый успех при запуске Pex с F #. Версией, которую я использовал, если верить моей папке «Загрузки», была академическая версия Microsoft Pex and Moles 0.94.51006.1 для (x86). Установочный файл был назван pex.academic.x86.msi.

Я не знаю, предшествует ли эта версия вашей.

Мои впечатления от моих испытаний заключались в том, что Pex и F # были не очень хорошей комбинацией: Pex настаивал на создании тестовых случаев с нулевыми входами. Поскольку генерация нулевых значений в F # не так уж распространена, обычно это не те сценарии, в которых я заинтересован. Добавление множества предположений для устранения тех, которые только что оставили меня с Pex, не в состоянии генерировать тестовые случаи. По общему признанию, функции, которые я тестировал, были слишком сложными, мне все еще нравится идея Pex, и я мог бы попробовать ее снова на меньших / более простых частях кода.

Использование Pex и его графического интерфейса в VS 2010 работало относительно хорошо, но не без разочарований.

...