Ответ 1
Забудьте отметить это как решение: Что я сделал:
Удалены VS 2008 и VS2010, включая все обновления. Установленный VS2008 полный, VS2010 полный. Теперь он работает! Причина пока неизвестна!
Теперь я настроил новый компьютер. Установленный VS 2010 и весь необходимый компонент, получил мой текущий проект на этом новом компьютере.
Компиляция проекта показывает мне, что VS 2010 не может найти ссылку "Microsoft.VisualStudio.QualityTools.UnitTestFramework".
Эта сборка находится в Программные файлы (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies
Но VS не может его найти.
Используемый проект в порядке. Его можно скомпилировать на моей старой машине!
Изменить: Ошибка при компиляции: ошибка CS0234: Тип или имя пространства имен "VisualStudio" не существует в пространстве имен "Microsoft" (вам не хватает ссылки на сборку?)
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1360,9): предупреждение MSB3245: Не удалось устранить эту ссылку. Не удалось найти сборку "Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version = 9.0.0.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a, processorArchitecture = MSIL". Убедитесь, что сборка существует на диске. Если эта ссылка требуется для вашего кода, вы можете получить ошибки компиляции.
Забудьте отметить это как решение: Что я сделал:
Удалены VS 2008 и VS2010, включая все обновления. Установленный VS2008 полный, VS2010 полный. Теперь он работает! Причина пока неизвестна!
Обновление кода для нас в 2003 году было разрешено следующим образом:
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
Существующий оператор "ИСПОЛЬЗОВАНИЕ" работал без изменений. "используя 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 Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
Мне не нужно было изменять целевую версию .NET framework.
Убедитесь, что ваш проект не помечен для платформы X64 в конфигурации смешанного решения (щелкните правой кнопкой мыши по решению → вариант Configuration Manager). После изменения платформы для тестового проекта с X64 на любой CPU сборки были распознаны и работали.
Нет решения, просто некоторые подсказки:
// 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). Неправильная ошибка приведет к такой ошибке. #
Все версии рамки единства можно найти в Codeplex. unity.codeplaex.com
Компиляция с .DotNet4 Framework 4 вместо профиля клиента .DotNet4 Framework 4 может также решить проблему.
Я получал ту же проблему, но обнаружил, что в ссылках она была установлена как GAC, поэтому я удалил ее и поместил в папку BIN. Когда это было на одном сервере, все было нормально, но это было потому, что он был зарегистрирован на этой машине, а не другой
Я считаю, что ваша проблема в том, что у вас есть проект, созданный на компьютере с установленным VS2010 SP1, и вы работаете на машине с VS2010 (без SP). Недавно мне пришлось менять машины, и мой отдел IS установил изображение на новой машине с VS2010, как и я.
Когда я вытащил свой код из источника управления, я внезапно не смог запустить модульные тесты, потому что "Не удалось найти сборку" Microsoft.VisualStudio.QualityTools.UnitTestFramework "
Затем я вспомнил, что я установил SP1 на свою старую машину. Таким образом, я установил VS2010 SP1 на новую машину, и волшебно проблема исчезла.
Итак, попробуйте загрузить и установить SP1
У меня была та же проблема. Это вызвано конфигурационным файлом, автоматически созданным для dll unit test, я не заметил. Содержимое файла app.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>
Я только что удалил файл app.cfg, и все было нормально, без каких-либо изменений.
У меня была такая же проблема. Вам необходимо изменить целевую структуру вашего проекта с ".Net Framework 4 Client Profile" на ".Net Framework 4"
Это сработало для меня.
У меня была та же проблема в старом проекте, ориентированном на DotNet Framework 2; обновив его до DotNet Framework 3.5, решил это для меня.