問題タブ [vstest.console.exe]

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 投票する
0 に答える
306 参照

c# - vstest.console.exe は x64 のカスタム テスト ロガーを見つけることができませんでした

テスト結果データをログに記録するために、x64 でカスタム ロガーを作成しました。テストを実行しようとすると、「エラー: URI または FriendlyName 'TrxTestLogger' のテスト ロガーが見つかりませんでした」というメッセージが表示されました。. でも、AnyCPUでビルドしたらうまくいきました。x64 でビルドされたいくつかのテスト dll があり、カスタム ロガーからそれらを読み取っているので、カスタム ロガーを x64 に保持する必要があります。ただし、x64 では、カスタム ロガーを見つけることができません。

手順は次のとおりです。

  1. FriendlyName 'TrxTestLogger' でカスタム ロガーを作成しました。
  2. x64でビルド。
  3. カスタム ロガー dll を C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\Extensions に配置しました。

助言がありますか?

0 投票する
0 に答える
55 参照

vstest.console.exe - SpecRun / VSTest - ディレクトリ パスの内部構造とは

SpecRun/SpecFlow の実装は初めてです。実行設定、プロファイル、およびディレクトリ パスに本当に苦労しています。これらすべての最終結果は、Azure 環境で Web テストを実行し、できれば結果を TFS に投稿することです。しかし、なぜ SpecRun が何をしているのか理解できません。これをどう言葉にしていいのか分からなくて困っています。

ドキュメントには、すべてのファイルが baseFolder に関連していると記載されています。baseFolder は bin フォルダー (私の場合は bin\debug) である必要があると述べています。すべての出力はそのフォルダーに関連しています。それが私の最初のストレス源です。個人的には、bin フォルダーを変更する必要はありません。そのようなレポート/ログはすべて、bin フォルダーの近くではなく、別の場所に書き込む必要があります。

私のアプリケーションは、プロジェクトの現在のフォルダーであるベース フォルダーに敏感です。現在のフォルダーは、(cd \project\process; exec プロセス) から処理が開始される場所であることが理解されます。アプリケーションがその環境設定を取得するのは、そのフォルダーです。しかし、次のエラーで爆弾を処理しています:

Could not find a part of the path 'C:\classes\defaulttestdata\default_data_values.json'

現在のディレクトリをプロジェクトから c:\ に変更したのは何ですか? なぜそれをしているのですか。パラメータがどのように渡されるか、およびアプリケーション内でどのような仮定を行うことができるかを再設計する必要があることに気付きました。

プロファイルを参照する .runsetting を使用して vstest.console でテストを開始すると、さらに複雑になります。プロジェクト フォルダにある .srprofile という名前を指定します。ただし、爆弾が見つからないため処理中:

> vstest.console bin\debug\rti.accidents.web.webtesting.dll --Settings:console.runsettings

Could not find file 'C:\Code\Branches\NIEDO2\V4\Accidents\RTI.Accidents.Web.WebTesting\bin\debug\specrun.srprofile'

bin\debug フォルダーをどこから取得してそこに移動するかをどのように知ったのでしょうか? プロファイルは、bin\debug\specrun.profile ではなく、specrun.srprofile と表示されますか?

出力とログがどこに行くのかわかりません。すべての試みの後、c:\TestResults、c:\TestResults、および c:\bin\debug\TestResults を見つけました。出力がある場合もあります。時々そうではありません。

Visual Studio 内では、すべてが非常に適切に動作します。それはすべてのハンキードーリーを実行し、プロジェクト(ビンではなく)に対して必要な場所に出力を配置します。

vstest.console の使用に成功し、.runsettings と .srprofile のコピーを喜んで共有してくれる人がいますか? 他の誰かが「アプリケーションの bin フォルダーに書き戻さない」という議論を提起していますか? 場合によっては、それによって領域が保護され、レポート/ログが ac:\ ドライブをピグアップしたくない場合があります。

すみません、馬鹿みたいな気分で少しイライラしています。

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

selenium - 実行設定でテストを実行中に「StackExchange.Redis.RedisConnectionException」を取得する

runsettings ファイルを使用してテストを実行しようとすると、問題が発生します。テストからアクセスしようとしている、SSL が有効になっている 1 つの redis キャッシュがあります。

StackExchange.Redis.RedisConnectionException: この操作を処理するための接続がありません: SET sample.TM.test|ConnectionSample|System.String|Sample ---> StackExchange.Redis.RedisConnectionException: SocketFailure on .cache.windows.net:6380/サブスクリプション、発信元: 接続済み、入力バッファー: 0、未処理: 0、最終読み取り: 1 秒前、最終書き込み: 1 秒前、未回答書き込み: 464270 秒前、キープアライブ: 60 秒、保留中: 0、状態: 接続中、last-heartbeat: never、last-mbeat: -1s ago、global: 1s ago、mgr: 非アクティブ、err: never ---> System.IO.IOException: トランスポート接続からデータを読み取れません: 既存の接続がリモート ホストによって強制的に閉じられました。---> System.Net.Sockets.SocketException: 既存の接続がリモート ホストによって強制的に閉じられました

この実行設定を使用せずに同じテストを実行できる場合。

MSTest V2 に移行せずにテストを正常に実行できる方法はありますか?

また

テストを実行するために、MSTest V2 で同じテスト コントローラー/エージェント セットアップを使用できますか?