web-dev-qa-db-ja.com

Visual Studio-突然テストをデバッグできません

私は何をしたのかわかりませんが、突然Visual Studio 2012はテストをデバッグしません。

Test Explorerからテストを選択し、実行するように指示すると、テスト出力ウィンドウにこれが出力されます。

> ------ Discover test started ------
> ========== Discover test finished: 29 found (0:00:01.3371755) ==========
> ------ Run test started ------ Process with an Id of -1 is not running.
> ========== Run test finished: 0 run (0:00:01.4711861) ==========

それは一体何を意味するのでしょうか?!これを数回行った後、エラーは次のように変わりました。

The Operation was Cancelled

私は確かにそうしなかった。

リスト内のすべてのテストでこれを実行しています。

ただし、テストは問題なく実行でき、合格しますが、テストをデバッグすることはできません。

私は何をしたのでしょうか?私は積極的に設定を変更したり、何かを変更したりはしませんでした。おそらくどこかで迷子になりましたが、どこで?

42
SelAromDotNet

今日これに遭遇しました。ソリューションを閉じようとしましたが、うまくいきませんでした。私の間違いは、ソリューションをデバッグモードではなくリリースモードに設定したことです。デバッグに設定すると、期待どおりに機能しました。

VS 2015 Professionalを使用しています。

42
Tom Mabaquiao

テストプロジェクトをVS 2010からVS 2012 Ultimate Update 3にアップグレードした後、同じ出力が得られました。MSTestコマンドを使用してDebug Selected Tests

Resharper 8Unit Test Sessionウィンドウを使用してテストをデバッグしようとしました。結果ウィンドウのメッセージは「テストは実行されませんでした」でした。

私を助けた解決策は、このリンクで指示されているように、テストプロジェクトの設定を変更してネイティブコードのデバッグを有効にすることでした: リフレクションを通じて呼び出されたメソッドによってスローされたキャッチされない例外

リンクが機能しない場合:

  1. プロジェクトに移動し、右クリックしてプロパティを選択します。
  2. 左側の「デバッグ」タブを選択します。
  3. 下部の「デバッガーを有効にする」に移動します
  4. [ネイティブコードのデバッグを有効にする](またはバージョンに応じて[アンマネージコードのデバッグを有効にする])チェックボックスをオンにします

ソリューションを投稿してくれたGalDude33に感謝します。

22
Branko

Visual Studio 2012で定期的に同じ問題を抱えています。

解決策:現在の解決策を閉じて、再度開きます

私の場合、VSを閉じて再度開く必要はありませんでした。

15
Pragmateek

以下の手順に従ってください。それは私のために働いた

手順。

1.Visual Studioインスタンスを閉じます

2.一時ファイルをクリーンアップし、ファイルをプリフェッチします。

3.プロジェクトbinフォルダー内のファイルを削除します。

4.アプリケーションを再起動します。

4
swathi cv

テストプロジェクトがビルドするプロジェクトの一部であることを確認します。

  • ソリューションを右クリック from ソリューションエクスプローラー
  • スタートアッププロジェクトの設定..に移動します
  • 構成プロパティをクリックし、テストプロジェクトのビルドがチェックされているを確認します
2
Peter.Ombwa

非同期テスト-シナリオの症状は、テストが実行されておらず、ブレークポイントがヒットしていなかったという点で似ていました。 Visual Studioのテストエクスプローラーはテストを表示できましたが、デバッグできませんでした。それを実行すると、テストエクスプローラーで表示される場合でも見つからないかのように動作しました。

それが他の誰かを助ける場合、私の問題は、テストメソッドのシグネチャを「async void」から「async Task」に変更する必要があるのと同じくらい簡単でした。

これを行う:

[TestMethod]
public async Task CorrectlyFailingTest()
{
  await SystemUnderTest.FailAsync();
}

これではない:

[TestMethod]
public async void CorrectlyFailingTest()
{
  await SystemUnderTest.FailAsync();
}
2
Paul Schroeder

VS2015で同様の問題が発生していました。私の場合、1つのユニットテストのみをデバッグできませんでした。デバッガーはテストを初期化しますが、テスト自体はデバッグせず、うまく終了します。問題は、プロジェクトのNuGetパッケージを有効にせずにNewtonsoft.JsonライブラリをインポートするResharperにありました。 (Alt + Enterを使用してライブラリを自動的にインポートしました)

ソリューションは、テストプロジェクト用のNewtonsoft.Json NuGetパッケージをインストールすることでした。

2
user2957464

私の場合、シンボルは読み込まれませんでした。

ブレークポイントがヒットするようにするには、[ツール]-> [オプション]-> [デバッグ]-> [除外しない限り、すべてのモジュールを読み込む]を選択する必要がありました。

enter image description here

1
pushkin

Visual Studio 2012を使用する場合、何らかの理由で、ショートカットctrl R + Tを使用すると、ブレークポイントに到達します。ただし、テストエクスプローラーで[すべて実行]または[選択したテストの実行]をクリックしても、実行されません。ただし、Visual Studio 2013は両方の方法で正常に機能します。

1
paibamboo

私にとっては、MSTest.TestAdapterおよびMSTest.TestFramework最新バージョンに問題を解決します。

1
Youngjae

次のリンクをご覧ください。それを修正するアップデートがあります。 Visual Studio 2012アップデート3。

http://social.msdn.Microsoft.com/Forums/vstudio/en-US/e96f53c7-dc8c-4274-8756-eb745de701e8/visual-studio-2012-update-3-cant-debug-unit-テスト

1
user2682517

私の場合、ビルド警告があるとブレークポイントに到達できません。これを確認するには、コード行を警告付きで切り替えます。長さ66000の未使用の文字列でした。(警告CS0219変数 'XXXXXXX'が割り当てられていますが、その値は使用されません)

コンパイラがこの行を削除したため、シンボルマッピングが失敗したと思いますか?

0
Yiping

提案されたソリューションはどれも私にとってはうまくいきませんでした。私のために働いたのは、ユニットテストプロジェクトとすべての依存プロジェクトのプラットフォームターゲットをx64ではなくAny CPUに変更することです回避策のようなものは本当の修正ではありません!!

[〜#〜] edit [〜#〜]

単体テストプロジェクトのターゲットプラットフォームは、プロジェクトのプロパティではなくテスト設定から変更できます。詳細については this answer を参照してください。

0
Ibrahim Amer

解決策:「デバッグテスト」または「テストの実行」ではなく、「ユニットテストのデバッグ」または「ユニットテストの実行」を選択します。

0

「テストの実行」を押しても、ブレーキポイントはトリガーされません。

コードをデバッグしてテストのブレークポイントで停止するには:

右クリック>テストのデバッグ

または

「テスト」タブ>デバッグ>すべてのテスト

0
Chris Mathew

テストプロジェクトとメインプロジェクトが同じフレームワークバージョンを使用していることを確認します。

enter image description here

0
Marco Staffoli

私にとって問題は、2017 v15.5.7にアップグレードした後、ソリューションのプロパティが何らかの形で変更されたことです。デバッグモードで1回テストを実行できる場所になりましたが、VSを再起動しない限り、もう一度実行することはできません。元に戻すと、再び機能しました。設定は、私にとっては、ソリューション>共通プロパティ>スタートアッププロジェクト>複数のスタートアッププロジェクトでした。どういうわけか、「単一のスタートアッププロジェクト」に設定されました。

0
Shawn Smith

Visual Studio 2017(15.8)の時点で、これはライブユニットテスト機能がアクティブなときに発生する可能性があります。出力には明確なメッセージはありません。デバッグなしで開始および停止するだけです。ソリューションはライブテストを停止するので、テストを正常にデバッグできます。

私にとっては、以下が働いた:

  1. ソリューションを閉じる
  2. Visual Studioを閉じます
  3. 「C:\ Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files \」の内容を削除します
  4. 「C:\ Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files \」の内容を削除します
  5. Visual Studioを開きます
  6. オープンソリューション
0
wh1tet1p

私にとっての問題は、構成ファイル(app.config)にデバッグ変換ファイル(app.Debug.config)がなく、追加すると動作することでした/再度デバッグします。

0
Jaider

app.configの問題参照は、テストプロジェクトをデバッグするときに、知らないうちにデバッガーをアタッチせず、ブレークポイントにヒットしない可能性があります。このファイルはパッケージによって更新されたか、古くなっている可能性があります。

解決策:通常、テストプロジェクトのapp.configから実行時タグの下にあるすべての依存関係をコピーして削除します。通常、デバッグは正常に動作し始めますが、アセンブリが見つからない場合は、一部の参照を追加し直す必要があります。

0
mhapps

これはあなたの問題に対する具体的な解決策ではないかもしれませんが、私が書いたテストをデバッグすることもできませんでした。解決策は非常に簡単でした:

メソッドをprivateからpublicに変更します。プライベートメソッド内でデバッグができない理由はわかりませんが、おそらく[Test]属性の実装。これが将来同様の問題に苦しんでいる人を助けることを願っています!

0

テスト設定ファイルを探していたため、デバッガに接続できませんでした。
これが問題の場合は、テスト->テスト設定-> Local.testsettingsオプションのチェックを外します

Unit Test Debugging Fix

0