web-dev-qa-db-ja.com

VisualStudioにMicrosoft.VisualStudio.QualityTools.UnitTestFrameworkがありません

新しいコンピューターを構成しました。 VS 2010と必要なすべてのコンポーネントをインストールし、その新しいコンピューターで実行中のプロジェクトを取得しました。

プロジェクトをコンパイルすると、VS2010が参照「Microsoft.VisualStudio.QualityTools.UnitTestFramework」を見つけることができないことがわかります。

このアセンブリは、Program Files(x86)\ Microsoft Visual Studio 10.0\Common7\IDE\PublicAssembliesにあります。

しかし、VSはそれを見つけることができません。

使用済みプロジェクトはOKです。古いマシンでコンパイルできます!

編集:コンパイル中のエラー:エラー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"が見つかりませんでした。アセンブリがディスク上に存在することを確認してください。この参照がコードで必要な場合、コンパイルエラーが発生する可能性があります。

10
Ferhat

これを解決済みとしてマークするのを忘れてください:私がしたこと:

すべての更新を含むVS2008およびVS2010のアンインストール-VS2008が完全にインストールされ、VS2010が完全にインストールされました。原因はまだ不明です!

2
Ferhat

私も同じ問題を抱えていました。

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

ターゲットの.NETFrameworkバージョンを変更する必要はありませんでした。

4
Jeff Roe

2003年のコードのアップグレードは、次の方法で解決されました。

  1. 既存の壊れた参照を削除する
  2. プロジェクトを.Net3.5から.Net4(クライアントバージョンではない)に更新する
  3. VS2010から新しいものを追加するOR VS2012

C:\ Program Files(x86)\ Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll

既存の「USING」ステートメントは変更なしで機能しました。 「Microsoft.VisualStudio.TestTools.UnitTestingを使用する;」

4
Mike

混合ソリューション構成でプロジェクトがX64プラットフォーム用にマークされていないことを確認します(ソリューションを右クリック->構成マネージャーオプション)。テストプロジェクトのプラットフォームをX64からAnyCPUに変更した後、アセンブリが認識され、機能しました。

2
sasha

驚異的:7年後、まだ問題

私のために働いた解決策(Visual Studio 2017、Pro)は、から参照を削除することでしたリスト(下の画像を参照)そして再度追加します。 enter image description here

1
SlowLearner

.DotNet4 Framework4クライアントプロファイルの代わりに.DotNet4Framework 4に対してコンパイルすると、問題が解決する場合もあります。

1
wvd_vegt

解決策はありません。ヒントがいくつかあります。

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

また、バージョンを確認する必要があります。今では2つあります(10.1.0.0と10.0.0.0)。間違っているとそのようなエラーが発生します。#

Unityフレームワークのすべてのバージョンは、Codeplexにあります。 nity.codeplaex.com

1
sra

私も同じ問題を抱えていました。ユニットテストdll用に自動的に生成された設定ファイルが原因でしたが、気づきませんでした。 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ファイルを削除したところ、他の変更を加えることなくすべてが正常に機能しました。

1
DiFi

問題は、VS2010 SP1がインストールされているマシンで作成されたプロジェクトがあり、VS2010(SPなし)がインストールされているマシンで実行されていることだと思います。最近、マシンを変更する必要があり、私のIS部門は、私が尋ねたように、VS2010を使用して新しいマシンにイメージをインストールしました。

コードをソース管理から削除すると、「アセンブリ "Microsoft.VisualStudio.QualityTools.UnitTestFramework"が見つかりませんでした」という理由で、突然単体テストを実行できなくなりました。

それから、古いマシンにSP1をインストールしたことを思い出しました。そこで、新しいマシンにVS2010 SP1をインストールすると、魔法のように問題が解決しました。

したがって、SP1をダウンロードしてインストールしてみてください

1
Scott Crowder

同じ問題が発生していましたが、参照でGACとして設定されていることがわかったので、これを削除してBINフォルダーに配置しました。一方のサーバーにある場合は問題ありませんでしたが、それはそのマシンに登録されており、もう一方のサーバーには登録されていないためです。

1
dom

DotNet Framework2を対象とした古いプロジェクトでも同じ問題が発生しました。 DotNet Framework 3.5に更新すると、問題が解決しました。

0
DaddyBean

私も同じ問題を抱えていました。プロジェクトのターゲットフレームワークを「.NetFramework4クライアントプロファイル」から「.NetFramework4」に変更する必要があります

それは私のために働いた。

0
Jack