В моей Visual Studio отсутствует Microsoft.VisualStudio.QualityTools.UnitTestFramework

Я настроил теперь новый компьютер. Установлен VS 2010 и весь необходимый компонент, получил мой запущенный проект на этом новом компьютере..

компиляция проекта показывает мне, что VS 2010 не может найти ссылку " Microsoft.VisualStudio.QualityTools.UnitTestFramework".

эта сборка находится в Программные файлы (x86)Microsoft Visual Studio 10.0Common7IDEPublicAssemblies

но VS не может его найти.

используемый проект в порядке. Он можно скомпилировать на моей старой машине!

изменить: Ошибка при компиляции: ошибка CS0234: тип или имя пространства имен "VisualStudio" не существует в пространстве имен "Microsoft" (отсутствует ссылка на сборку?)

C:WindowsMicrosoft.NETFrameworkv4.0.30319Microsoft.Common.targets (1360,9): предупреждение MSB3245: не удалось разрешить эту ссылку. Не удалось найти сборку " Microsoft.VisualStudio.QualityTools.UnitTestFramework, версия=9.0.0.0, культура = нейтральная, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL". Убедитесь, что сборка существует на диске. Если эта ссылка требуется в коде, могут возникнуть ошибки компиляции.

12 ответов


обновление некоторого кода 2003 для нас было разрешено следующим образом:

  1. удалить существующую ссылку
  2. обновление проекта с .Net 3.5 до .Net 4 (не клиентская версия)
  3. добавление нового из VS2010 или VS2012

C:\Program файлы (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll файлы

существующий оператор" USING" работал без изменений. "с помощью Microsoft.VisualStudio.TestTools.UnitTesting;"


У меня была та же проблема.

Old machine:
    Windows XP, 32 bit
    VS 2010 (32 bit)

New machine:
    Windows 7, 64 bit
    VS 2010 (32 bit)

Я решил ее просто удалив ссылку на Microsoft...UnitTestFramework и добавление нового, который был здесь:

C:\Program файлы (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll файлы

мне не нужно было менять целевую версию .NET framework.


убедитесь, что ваш проект не помечен для платформы X64 в конфигурации смешанного решения (щелкните правой кнопкой мыши решение -> Configuration Manager). После изменения платформы для тестового проекта с X64 на любой процессор сборки были распознаны и работали.


забудьте отметить это как решено: Что я сделал:

Uninstalled VS 2008 и VS2010, включая все обновления-установлен VS2008 full, VS2010 full теперь он работает! Причина до сих пор неизвестна!


нет решения, просто некоторые советы:

// using Microsoft.VisualStudio.QualityTools.UnitTestFramework
// Path: %ProgramFiles(x86)%\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll

Вам также необходимо проверить версии. К настоящему времени есть два (10.1.0.0 и 10.0.0.0) ошибка приведет к такой ошибке.#

все версии unity-framework можно найти в Codeplex. unity.codeplaex.com


компилировать против .Dotnet4 Framework 4 вместо .Профиль клиента Dotnet4 Framework 4 также может решить эту проблему.


Я получал ту же проблему, но обнаружил, что в ссылках он был установлен как GAC, поэтому я удалил это и положил его в папку BIN. Когда он был на одном сервере, это было хорошо, но это было потому, что он был зарегистрирован на этой машине, а не на другом


Я считаю, что ваша проблема в том, что у вас есть проект, который был создан на машине с установленным VS2010 SP1, и вы работаете на машине с VS2010 (no SP). Недавно мне пришлось сменить машины, и мой отдел IS установил образ на новую машину с VS2010, как я и просил.

когда я вытащил свой код из системы управления версиями, внезапно я не смог запустить модульные тесты, потому что "Не удалось найти сборку "Microsoft.VisualStudio.QualityTools.UnitTestFramework"

затем я вспомнил, что установил SP1 на свою старую машину. Поэтому я установил VS2010 SP1 на новую машину, и проблема волшебным образом исчезла.

поэтому попробуйте загрузить и установить SP1


У меня тоже была такая же проблема. Это было вызвано конфигурационным файлом, автоматически сгенерированным для библиотеки DLL unit test, я не заметил. Приложение.cfg-файл содержал:

<?xml version="1.0"?>
    <configuration>
<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
            <assemblyIdentity      name="Microsoft.VisualStudio.QualityTools.UnitTestFramework" publicKeyToken="B03F5F7F11D50A3A" culture="neutral"/>
            <bindingRedirect oldVersion="0.0.0.0-10.1.0.0" newVersion="10.1.0.0"/>
        </dependentAssembly>
    </assemblyBinding>
</runtime>
 <startup>
     <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
 </startup>

Я только что удалил это приложение.файл cfg и все работало нормально без каких-либо других изменений снова.


У меня была такая же проблема. Вам нужно изменить целевую структуру вашего проекта с ".NET Framework 4 Client Profile"на" .Net Framework 4"

Это сработало для меня.


У меня была такая же проблема в старом проекте, нацеленном на dotnet Framework 2; обновление его до dotnet Framework 3.5 решило ее для меня.


ошеломляющий: 7 лет, все еще проблема

решение, которое сработало для меня (Visual Studio 2017, Pro), чтобы удалить ссылку из списка (см. рисунок ниже), а затем повторно добавить его. enter image description here