私はxUnitをテストプロジェクトに追加しました(アサートの場合、フレームワークとしてMSTestを使用しています)とすぐに、テストの実行がテストの実行を拒否されました。これはエラーメッセージです。
テスト実行 '{....}'をキューに入れるのに失敗しましたテスト実行の展開の問題:ファイルまたはディレクトリ '... xUnit.dll'の場所は信頼されていません。
Googleで答えを見つけるのに数回の試行が必要だったので、他の誰かが同じ問題に遭遇した場合に備えて、ここにそれを置きます。詳細な説明は このブログ投稿 にあります。
基本的に、修正プログラムはWindowsエクスプローラーでdllファイル(たとえば、xunit.dll)を右クリックし、[プロパティ]に移動して、[セキュリティ]テキストの横にあるタブの下部にある[ブロック解除]をクリックします。 Vista/Windows 2008は、他のマシンまたはインターネットからのアセンブリを自動的に安全ではないとマークするようです。
いくつかのコメント者が述べたように、これを有効にするにはVisual Studioを再起動する必要がある場合もあります。
私のチームでも同じ問題がありました。
あなたの解決策は機能しませんでしたが、 チャールズ・スターリングによるこの投稿 は助けになりました。
次の行を使用しました。
caspol -machine -addgroup 1 -url file://\\server/share/* FullTrust -name DevShare
この問題が発生し、「ブロック解除」を数分より長く続けようとする試み、および/またはcaspolを理解できなかったため、ようやくは、アセンブリを元のソースの場所から再コピーするため、次回プロジェクトをビルドまたは再ビルドするときに、アセンブリが再びブロックされることをGoogle経由で少し見つけました。 (これがリファレンスアセンブリで以前に起こったことに気づいたことはないと思いますが、とにかく...)
これに対する私の修正は次のとおりです:
安全のため、必要なDLLをすべて別の場所にコピーします
Visual Studioで参照を削除する
Binフォルダー内のDLLを物理的に削除する
DLLがコピーされた場所で個別にDLLのブロックを解除します
保持スポットからVisual Studioに参照を追加します
その後のすべてのビルドまたは再ビルドは、その後正常に機能しました。
XPマシンで実行しています(.NET 3.5 SP1がインストールされている場合でも))ここに記載されている他のソリューションを機能させることができませんでした。
しかし、Davy Landmanが参照している同じ Charles Sterlingによる投稿 から作業しているので、このバリエーションでようやく成功しました。
これらの手順の後、再起動や再構築後を含め、テストを実行できます。
編集: この回答 で説明されているように、.NET 2.0構成ツールをシステムにインストールするには、.NET SDK(.NETフレームワークとは異なる)をインストールする必要がある場合があります。
Moqにも同じ問題がありました。しかし、「ブロック解除」はしません。ブロックを解除するたびに、まだブロックされていました!?!?
ダウンロードした元のZipファイルのブロックを解除する必要がありました。次に、DLLをZipファイルから再度コピーします。その後で機能します。
今では当たり前のように見えるかもしれませんが、ブロック解除をクリックすると、ファイルは読み取り専用に設定されました。
その属性のチェックを外して適用し、ブロック解除を選択した後で初めて、実際に機能しました。
それを試してみてください。
:)
PS:Visual Studioが古いdllを取得していないことを確認するために、binフォルダー内の古いdllもすべて削除しました。
Vistaでブロックされたダウンロード済みDLLにも同じ問題がありました。ファイルのプロパティの[ブロック解除]ボタンを取得するには、管理者権限が必要です。私は単純にDLLをソース管理からの最新バージョンに置き換えました(TFS)以前にコミットしました。
file
に移動しますProperties
を選択しますAllow
をクリックしますブロックを解除する必要があるのはmoq.dllだけではありません。最新のZipファイルには、moq.xmlおよびmoq.pdbファイルが含まれています。dllを参照すると、これらの2つのファイルもbinフォルダーにコピーされます。 3つすべてのブロックが解除されていない場合、テストは実行されません。
また、notepad ++でファイルを開いて名前を変更してみました。アプローチは少し異なりますが、私にとってはうまくいきました。ローカルファイルシステムは、それが同じマシンからのものであると考えます。