2016-08-09 9 views
3

私は最近、xunitからmstestにすべてのユニットテストを切り替えました。ローカルのdevマシンではすべてうまく動作しますが、テストをVSTSでCIビルド、それは述べて、私のテストDLL内の任意のテストを認識しません:VSTS build of .NET Core 1.0 VSTest警告:テストは利用できません

「警告:なしテストは Cでは利用できません:\ vsts_work \ 4 \ S \テスト\ユニットテスト\ binが\ Release \ net452 \ UnitTests.dll」を参照してください。注目すべきは

"testRunner": "mstest", 

    "dependencies": { 
    "dotnet-test-mstest": "1.0.1-preview", 
    "MSTest.TestFramework": "1.0.1-preview" 
    } 

、私はオンプレミスビルドエージェントを使用していますが、私は私がにログインすることができます証明してきました。私は私が代わりに重要なproject.jsonビットのすべてしていると信じて

エージェントが動作するサービスアカウントを使用してエージェントをビルドし、Visual Studioを開いてそのようにテストを実行することができます。

また、上記のパスを見ても問題はありませんが、私が完全なフレームワークを使用していることを明示的に示す価値があります。

誰かが欲しいと願っています。

+0

テストを実行するためにビルドタスクをどのように設定しましたか? –

+0

ええ、私はいくつかの詳細を残したと思います。私はそれを暗示しましたが、明確にするために、VSツールを使ってこのプロジェクトを作成したので、.slnファイルといくつかのxprojファイルがあります。私のローカルマシンでは、私は単体テストの実行のためにテストエクスプローラを使います。私のCIビルドでは、 "Visual Studio Test"テストランナーを使用しています(もう一度、Visual Studioテーマに固執しています)。 –

答えて

2

は、私は答えは、コマンドラインを提供します(このstackoverflow post

のおかげでその答えが欠けている唯一のものは、それがVSTSで働くようにする方法である、「Visual Studioのテスト」アクションを使用する方法を考え出しました)。それはVSTSで仕事を得るために、私は「他のコンソールオプション」の「高度な実行オプション」の下で、コマンドライン引数の残りの部分を入れて、次に「テストアセンブリ」パラメータ

**\test\**\project.json 

に次の文字列を入れて、ボックス。

/UseVsixExtensions:true /logger:trx 

これは、ビジュアルスタジオツールに固執しようとしている次の人に役立ちます。

0

ビルド中に.NETコアテストを実行するには、「コマンドライン」タスクを追加して「dotnet test」コマンドを実行し、「project.json」ファイルが配置されたパスに「Working Folder」を設定します: enter image description here

+0

ありがとうございます。 2つのコメントは、まず、dotnet CLIではなく、すべての目的でビジュアルスタジオツールを使用する道を意図的に外していました。しかし、(2番目のコメント)、私は餌を取る。私はドットネットテストを使用するように切り替えましたが、ログにはすべてのテストが通過しているようですが、テスト結果やコードカバレッジはVSTSで戻ってきました。私は周りを突き刺して見つけられるものを見ますが、あなたや誰かが袖口から答えを知っていれば、それは素晴らしいことでしょう。 –

+0

@ wikiwakit -l trxオプションを追加してテスト結果を出力し、ビルド定義に 'テスト結果の公開'タスクを追加することができます。コードカバレッジの結果を得る方法はまだ分かりませんが、テスト結果が得られます。 –

関連する問題