2010-10-12 4 views
1

Я пытался получить некоторые тесты работают в консольном приложенииMSTest внутри консольного приложения

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using Microsoft.VisualStudio.TestTools.UnitTesting; // this doesn't work 

Ошибки я получаю:

Имя типа или пространства имен «VisualStudio» не существует в пространстве имен «Microsoft» (пропущена ссылка на сборку?)

Но все это работает в отдельном тестовом проекте: alt text

Вопрос: Что нового?

ответ

1

Вы должны изменить целевую рамки ConsoleApplication быть .Net Framework 4 (НЕ.NET Framework 4 Client Profile)

Если вы ориентируетесь на .NET Framework 4 Client Profile, вы не можете ссылки сборку, не в профиль клиента .NET Framework 4. Вместо этого вы должны быть направлены на .NET Framework 4.

Вы не можете ссылаться на Microsoft.VisualStudio.QualityTools.UnitTestFramewor, потому что она не является частью структуры профиля клиента.

EDIT: К сожалению, у вас есть, что уже ...

Вам нужна ссылка на Microsoft.VisualStudio.QualityTools.UnitTestFramework в приложении консоли.

Вы можете добавить его из C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies

проект Visual Studio Test по умолчанию имеет эту ссылку по умолчанию ...

+0

Я также должен был добавить в {3AC096D0-A1C2-E12C-1390-A8335801FDAB}; {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} в csproj чтобы испытуемый мог распознать эту сборку. http://www.bryancook.net/2009/12/manually-creating-ms-test-project.html –

+0

Только что обнаружили, что консольное приложение не запускается, когда эти GUID находятся там .. он просто запускается испытательный бегун. Пойду в отдельный проект для тестирования, я думаю .. это было весело! –

0

Вы можете создать тестовый проект от визуальной студии и изменить тип выхода проекта из библиотеки классов в консольное приложение.

Привет Асим Bansal

Смежные вопросы