2013-06-11 6 views
0

Я использую Visual Studio для приложения C#.Тесты на Visual Studio не найдены

В моем компьютере я установил Gallio, который представляет собой набор тестовых инструментов (включая тест-бегун). Мои тесты модуля - это обычные модульные тесты с использованием инфраструктуры NUnit. На моем ПК Visual Studio может идентифицировать и запускать тесты.

Но когда я изменить ПК, или когда я ип установленной Gallio из шахты, Visual Studio не может больше найти модульные тесты, дающие сообщение, как показано ниже:

«тесты не проводились, так как не были загружены никаких испытаний или выбранные тесты отключены »

Я знаю, что факт, что мои проекты не могут быть загружены, - это из-за Галлио. Когда я добавлял тест-класс в свой проект, Тип теста был установлен в Gallio. Я попробовал почти все, чтобы Visual Studio смогла снова найти мои тестовые классы, но без везения.

У кого-то есть такая же проблема? Есть идеи, почему это происходит?

спасибо.

+0

Являются ли ваши классы украшенными '[TestClass]' и методами с '[TestMethod]'? Не появляются ли они вообще или не отображаются серым цветом ('[Ignore]')? –

+0

@ DominicZukiewicz Спасибо за ваш ответ. Мои классы украшены [TestFixture] и моими методами с помощью [Test], поскольку я использую фреймворк NUnit. Тестовые классы вообще не отображаются ни в редакторе Test List Editor, ни в Test View. Даже если использовать NUnit, разве они не появятся там? – nikkatsa

+0

NUnit не доступен внутри VS 2010 года. Могут использоваться только тесты стиля MSTest - если вы не используете плагины. –

ответ

5

В Visual Studio 2010 нет тестового бегуна для NUnit. Он может выполнять тесты MSUnit по умолчанию без использования надстройки, например Resharper. Visual Studio 2012 теперь включает в себя бегун для NUnit среди других платформ тестирования.

У вас есть следующие варианты:

  1. Порт тесты использовать MSUnit; или
  2. Обновление до Visual Studio 2012; или
  3. Установите надстройку, как Resharper, который имеет бегун NUnit построен в
+0

Джек благодарит вас за ответ. На самом деле вы отвечаете. Вот почему, когда у меня был Gallio, я мог запускать тесты из Visual Studio, и когда я удалил его, я больше не мог. Мне показалось странным, и я не знал, как работает VS. Я боролся с этим полдня. Спасибо за ответ. – nikkatsa

1

Проблема заключается в том, что MSTest и NUnit использовать различные атрибуты флага испытаний:.

// MSTest 
[TestClass] 
public class MsTests 
{ 
    [TestMethod] 
    public void MyMethod() 
} 

// NUnit 
[TestFixture] 
public class NUnitTests 
{ 
    [Test] 
    public void MyMethod() 
} 

Вы должны сделать своп или использовать оба варианта, если вы хотите, чтобы он был доступен для обеих фреймворков. Однако MSTest не любит методы с параметрами, тогда как NUnit делает.

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