私は単なる初心者であり、TFSとその継続的な統合ワークフローについて学んでいます。これが言われても、これは簡単な質問で不足しているかもしれないので、愚かな質問かもしれませんが、どんな助けや助言も高く評価されます。TFSビルドパイプラインでユニットテストを実行する(
私は、TFSサーバーのCIビルドパイプラインでテストタスクとして実行したい.NET Core 2.0を使用して書かれたかなり単純な単体テストサンプルを持っています。
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace MyUnitTest
{
[TestClass]
public class MyUnitTest
{
[TestMethod]
public void PassingTest()
{
Assert.AreEqual(4, Add(2, 2));
}
[TestMethod]
public void FailingTest()
{
Assert.AreEqual(5, Add(2, 2));
}
int Add(int x, int y)
{
return x + y;
}
}
}
私は、Visual Studioでこれらのテストを実行しようとすると、それは完璧に構築し、テストが成功し、それに応じて失敗する:これはかなりこのようなものになります。だから私は私のプロジェクトをコミットし、私たちのTFS gitリポジトリにプッシュします。今、同様のテストをビルドパイプラインに統合したいと考えています。
CIビルドで使用されるビルド定義は、thisのようになります。私はVisual Studio Test - testAssemblies
タスクをビルドパイプラインに追加し、検索パターンをMyUnitTest.dll
という名前のアセンブリを見つけるように設定しました。ビルドをキューに入れると、VSTestのlogに次の警告が表示されます。
Warning: No test is available in C:\BuildAgent\_work\9\s\MyUnitTest\MyUnitTest\bin\release\netcoreapp1.1\MyUnitTest.dll. Make sure that installed test discoverers & executors, platform & framework version settings are appropriate and try again.
だから、VSTestは何とかターゲットアセンブリで実行するテストを見つけることができないように私には思えます。私は何かを間違って設定したり、特定のパラメータを適切に設定するのを忘れたりすることはかなり肯定的です。私が間違っていることを突き止めてしまう可能性のある示唆に対して、私は感謝しています。
オンラインで解決策を検索すると、私はこれに遭遇しましたquestion、これは同様の問題があるようです。
をあなたが追加しましたあなたのプロジェクトにxUnitテストランナーのNuGetパッケージ? –
はい私はxUnitテストランナーを含めました。 –
@EmreAKI [this](https://stackoverflow.com/questions/47546562/xunit-tests-do-not-appear-on-tfs)質問にも同様の問題があります。その答えがあまりにも役に立ちます – Szeki