問題タブ [vstesthost]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
3628 参照

visual-studio-2008 - VSTestHost.exe が動作を停止しました - 単体テストを実行できません

Microsoft 単体テスト フレームワークが突然ストライキを起こしました。

VS2008 でテストを実行しようとすると、「VSTestHost.exe が動作を停止しました」というメッセージのダイアログが表示されます。

すべての更新が適用された状態で、Visual Studio Team System 2008 (バージョン 9.0.30729.1 SP) を Vista で実行しています。

「問題のレポートと解決策」は、「ソフトウェア テスター向けの Visual Studio Team Edition の最新の製品版にアップグレードする」ことを示唆していますが、これは正しくありません。

再起動を試みました。
「devenv /resetuserdata」を試しました

これらは違いはありませんでした。

このナンセンスに基づいてMbUnitに戻りたいのですが、それは私の選択ではありません。
これを修正する方法について何か提案はありますか?

0 投票する
2 に答える
1484 参照

visual-studio-2008 - VSTestHost での WatiN テストの実行に関するスレッド化の問題

開発環境で実行されている単純な WatiN Web テストを取得し、TFS ビルド サーバーで動作させようとしています。WatiN が例外を発生させています:

テスト ランナーである VSTestHost は、デフォルトで STA スレッドを使用すると思われます。また、.testrunco​​nfig ファイルを使用して明示的に STA に強制しようとしました。それでもWatiNは不満です。Windows Server 2008 で Visual Studio/TFS 2008 を使用しています。

他の誰かがこの問題にぶつかり、解決策を見つけましたか?

0 投票する
1 に答える
1167 参照

unit-testing - VSTestHost.exeがc:\ windows \ assembly \ tempディレクトリからアセンブリをロードするのはなぜですか?

私はGACにインストールする必要のあるアセンブリを開発しており、ビルド後の手順の一環として、ビルドのたびにGACが更新されるようにしています。(Visual Studio)単体テストを(個別のテストアセンブリで)作成して、テスト対象のクラスで新しいメソッドを呼び出し、テスト対象のクラス(TDDスタイル)にメソッドを実装してから、テストを実行する場合(CTRL R、 T)テスト中のアセンブリと単体テストプロジェクトがビルドされます(アセンブリはGACで更新されます)。

テストは失敗します(新しいメソッドに対してSystem.MissingMethodExceptionをスローします)。テストをデバッグすると、テストに合格し、その後、テストを実行でき、合格します。

調査の一環として、テストに無限ループを追加して実行しました。Process Explorerを使用して、テスト中に読み込まれるdllのパスを見つけました。C:\ WINDOWS \ assembly \ temp\4XY349E7C5にアセンブリへのハンドルがあることがわかりました。ここで見つけたトリックを使用してそのディレクトリを調べると、GACにあるよりも古いバージョンのdllが見つかります。また、Reflectorを使用してdllを調べると、MissingMethodExceptionを説明する追加した新しいメソッドが含まれていないことがわかります。

では、VSTestHost.exeが一時ディレクトリにdllをロードするのはなぜですか?正しいdllが使用されていることを確認する方法はありますか?

0 投票する
1 に答える
145 参照

visual-studio-2008 - vsTestHost.exeは1つのプロセッサのみを使用します

クアッドコア64ビットWindows2008ボックスで1つのTestMethodを使用する単純な負荷テストがあります。

負荷テストを実行すると、1つのプロセッサだけが100%使用されており、他のプロセッサはアイドル状態であり、サーバーが最大に達していないことがわかっているため、テストエージェントは十分な負荷を生成できません。それ。

複数のプロセッサを使用するように指示する方法はありますか?

0 投票する
3 に答える
728 参照

cruisecontrol.net - CruiseControl.NET から MSTest を実行すると、VsPerfMon.exe および VsTestHost.exe プロセスがハングする

MSTest で CruiseControl.NET を使用して、vs2008 プロジェクトをビルドし、単体テストを実行しています。

Visual Studio 2008 からテストを実行すると、完全に機能します。ただし、CruiseControl によってテストが開始されると、VsPerfMon.exe および VsTestHost.exe プロセスは、タスク マネージャーから終了するまでハングします。これは、クルーズコントロール自体もハングすることを意味し、クルーズコントロールでビルドした結果が得られません。

私の問題の解決策は何か考えている人はいますか?

ありがとう、

D

0 投票する
1 に答える
1552 参照

c# - VisualStudioテスト環境内からC++DLLをロードする際の問題

そのため、VisualStudioのテスト環境を使用してソリューションのテストをセットアップしようとしています。セットアップは次のようになります。

対応するラッパーを持つ2つの理論的に交換可能なサードパーティライブラリがあります。両方をサポートできる必要があります。

したがって、テストプロジェクトを実行すると、次のようになります。

  1. テスト対象のプロジェクトが正常に読み込まれます
  2. 基盤のC#プロジェクトが正常に読み込まれる
  3. C++ラッパーAはロードに失敗します。ラッパーBを使用すれば、すべて問題ありません。

ラッパーAの例外コールスタックは次のとおりです。

私はこれをオンラインで検索しましたが、同じコールスタックについて質問する人がたくさんいて、応答がほとんどありませんでした。

私はProcMonで何が起こっているのかを見ました。ラッパーAとラッパーBをロードするとどうなるかを比較しました。ラッパーBのロードが完了するまで、状況はほぼ同じように見えます。同じ時点で、ラッパーAは不可解なことに再度ロードを開始します。今回は、テストプロジェクトによって既にロードされているC#ファンデーションDLLをロードしようとします。ただし、DLL検索パスにテストフォルダが含まれていないため、これらのDLLは見つかりません(GACおよびVSTestHostディレクトリでDLLを検索します)。

私が気付いたもう1つのことは、C#コードがデフォルトのappdomainで実行されていないことです。だから私の理論は、次のことが起こっているということです:

  1. ラッパーAは、サンドボックス化されたアプリドメインにロードしようとします。
  2. ラッパーAが正常にロードされなかったとシステムに思わせる何かが発生しました
  3. システムは、デフォルトのappdomainにラッパーAをロードしようとします。このアプリドメインでは、C#DLLが読み込まれないため、読み込みを試みて失敗します。

それで、何が得られますか?ステップ2で何が起こっている可能性がありますか?ラッパーBが正常にロードされ、ラッパーAがロードされない理由として考えられるものは何ですか?

ラッパーAとラッパーBがどのように異なるのか疑問に思われる場合:それらのプロジェクトは同じ設定を持ち、同じインターフェースをサポートします。そうでなければ、それらは完全に異なります。しかし、どのような違いこの状況につながる可能性があるのか​​知りたいです。

DLLをGACに追加するか、VSTestHostディレクトリにコピーすると、ラッパーAがDLLを検出し、正常にロードされることを追加する必要があります。しかし、私はまだ何が悪いのかを理解したいと思います。

0 投票する
4 に答える
4660 参照

visual-studio - VS10デバッガーエラー:テストホストプロセスが予期せず終了しました

VS10のテストデバッガーで問題が発生しています。すべてのテストはエラーなしで実行されていますが、デバッグ時にオブジェクトデータを読み取ろうとすると中止されます。その後、このエラーは要約に表示されます。Test host process exited unexpectedly.

エラーの詳細を確認できなくなりました。テストログファイルにアクセス/生成するにはどうすればよいですか?または、さらに良い:誰かが同様の問題を経験しましたか?そして、解決策を見つけましたか?


追加情報:

runtime-test-dataは、同じライブラリアセンブリのオブジェクトで利用できます。これは、ランタイムモードでアクセスできないクラスの1つにすぎません。次の場所でブレークポイントを使用する場合:

  • オブジェクトに影響を与えるすべての行:-ランタイムデータとテストパスを確認できます
  • 1か所のみ:-テストは中止され、データは表示されません
  • ブレークポイントなし:-テストが実行され、合格します。

テストは最近まで正常に機能していました。プロジェクトをソリューションフォルダーに分割してソリューションを変更したときに、問題が発生する直前。コードに影響を与えるような変更は加えていません。プロジェクトを元のフォルダーに戻しても問題は解決しないので、疑問に思います-これはVisual Studio自体のバグですか?

これが私がこれまでに試したことです:

  • ソリューションの再構築とクリーニング。
  • Visual Studioを閉じて、システムを再起動します。
  • VS10 ServicePack1のインストール
  • VisualStudio10の再インストール
  • VS10UltimateおよびPremiumでのテスト
  • ソリューションファイルの削除と再生成
  • すべてのブレークポイントを削除する
  • TraceAndTestImpact / Local.testsettings:テストTimeout > timeoutと設定の中止を30分に設定します。
  • TraceAndTestImpact / Local.testsettings:Unit Test > Assembly定義されたフォルダー
  • TraceAndTestImpact / Local.testsettings:Deployment > Enable deploymentディレクトリとファイル

どうすればこれを修正できますか?どんな提案でも大歓迎です。

0 投票する
2 に答える
2278 参照

visual-studio-2012 - Windows Phone プロジェクトの Windows または非対話型サービスから VSTest.Console.exe を実行できない

Visual Studio 2012 Update 2 をインストールし、コマンド ラインから一連の Windows Phone テストを正常に実行しました

次に、Jenkins から (VSTest プラグインを使用して) これを実行しようとしたところ、明らかにサンドボックスと関係がある次のメッセージを受け取りました。

テストの実行を開始しています。お待ちください... エラー: Windows Phone アプリの単体テストのテスト実行を開始できませんでした: Windows ストア アプリの単体テストは、サービスまたは非対話型プロセスから実行できません。インタラクティブなプロセスから単体テストを実行してください。

何か案は...

0 投票する
1 に答える
2637 参照

testing - Visual Studio 2012 vstest: カテゴリに属さないテストを実行する

コマンドラインからカテゴリに属さないすべてのテストを実行することは可能ですか? ドキュメントから、次のようなカテゴリのメンバーであるすべてのテストを実行できることがわかりました。

vstest.console.exe myTestProject.dll /TestCaseFilter:TestCategory="Nightly"

私がやりたいことは、いくつかのテスト メソッドをテスト カテゴリに割り当て、それらのテストを 1 回の実行で実行することです。次に、残りのテストを別のテスト実行で実行したいと思います (現在の問題はここにあります)。1000 以上のテストがあるので、「基本」カテゴリを追加するために、すべての TestMethod 属性を検索して置換する必要がないことを願っています。また、テストを異なるプロジェクトに分割する必要もありません。

ありがとう。

0 投票する
1 に答える
448 参照

visual-studio - サーバーにVisual StudioをインストールせずにVisual Studio 2013単体テストを実行する

Visual Studio 2013 で作成した単体テストをステージング サーバーで実行しようとしています。

テスト エージェントではなく、そこに Visual Studio をインストールしたくないので、必要な DLL と EXE の一部をコピーして実行する方法を見つけました。

はい、ハックであることは承知していますが、ステージング環境を完全にクリーンに保つために、テスト エージェントではなくこのソリューションを好みます。

とにかく、vstest.discoveryengine.exe が次のエラーでクラッシュするという事実を除いて、テストは正しく行われています。

注: このクラッシュは、テストの正常な完了を妨げるものではありません。手動でいつでも閉じなければならない迷惑なポップアップです...

管理者としてバッチ スクリプトを実行しようとしましたが、うまくいきませんでした。

vstest.discoveryengine.exe が既存のテストを開始または一覧表示しないようにする方法に関するヒントはありますか?

どうもありがとうございました

一番

シゲルシ