2011-12-05 13 views
21

TeamCityでMSTestを実行させる方法を理解しようとしています。 MSTest.exeへTeamCityにMSTestを使用してテストを実行させるにはどうすればよいですか?

  • パス::% system.MSTest.10.0%の
  • リストのアセンブリファイル:プロジェクト\ Metadude私は、次のパラメータを使用してセットアップビルドステップを持っています。 。テスト\ bin \ Debug \ Metadude。 .Test.dll
  • MSTestを実行し、構成ファイル:この手順の実行時に Local.testsettings

しかし、それはすべてのテストを実行しません。

  • テスト: Tests.Metadude.Core.Extensions.StringExtensionsTests
私は、以下のものを使用して実行するテストを指定しようとしました

[02:13:49]: Step 2/2: Run Unit Tests (MSTest) 
[02:13:49]: [Step 2/2] Starting: "D:\Program Files (x86)\TeamCity\buildAgent\plugins\dotnetPlugin\bin\JetBrains.BuildServer.NUnitLauncher.exe" #TeamCityImplicit 
[02:13:49]: [Step 2/2] in directory: D:\Program Files (x86)\TeamCity\buildAgent\work\1f82da3df0f560b6 
[02:13:50]: [Step 2/2] Microsoft (R) Test Execution Command Line Tool Version 10.0.30319.1 
[02:13:50]: [Step 2/2] Copyright (c) Microsoft Corporation. All rights reserved. 
[02:13:50]: [Step 2/2] 
[02:13:50]: [Step 2/2] Please specify tests to run, or specify the /publish switch to publish results. 
[02:13:50]: [Step 2/2] For switch syntax, type "MSTest /help" 
[02:13:50]: [Step 2/2] Process exited with code 1 
[02:13:50]: Publishing internal artifacts 
[02:13:50]: [Publishing internal artifacts] Sending build.finish.properties.gz file 
[02:13:50]: Build finished 

:これは、ログが出力されます

しかし、それは動作しません。私はTeamCityのMSTestビルドのステップに関連するGoogleのドキュメントを見つけることができないようです。

UPDATE [OK]を、私は馬鹿です。まあそれは少し厳しいかもしれませんが、テストアセンブリにはアセンブリ名から "s"がありませんでした。しかし、ビルドログでその効果を得るにはうれしいでしょう。

+0

@Leslieハンクス? – wal

+0

@wal私はアセンブリ名にタイプミスがありました。 –

+0

私はまた、アセンブリ名から "s"を忘れたばかだ。トリプルチェックに値する:) – TinyRacoon

答えて

20

まず、テストしようとしているアセンブリがその場所にあることを確認します。

すなわち

あなたの相対パス:私はあなたのファイルのdidntが存在する場合はTCによって記録された何かを期待しかし プロジェクト\ Metadude..Tests \ binに\デバッグ\ Metadude..Test.dll

。それは何らかの引数なしで実行中のMSTestのように見えます。

パスが正しいことがわかったら.testsettingsファイルを指定せずに試してみてください。私はこれでTCなしでMSTestを使用しています(ただし、必要な場合があります)。私は別のやっている他の事は、私がMSTest.exeへのフルパスを指定している、すなわち

C:\ Program Files \ MicrosoftビジュアルStudio 10.0 \ Common7 \ IDE \ MSTest.exe

の代わりに、その答えであなたの問題を解決ステップのその変数私はこれをしなかったが、(それが仕事didntのような彼らの変数を使用した場合)正当な理由があっただろう、なぜ私は思い出すことができない'%system.MSTest.10.0%'

+0

_まず、テストしようとしているアセンブリがその場所にあることを確認します。_ @walと同様に、それは私を得たアセンブリ名でした。私の場合、アセンブリ名はプロジェクト名...仮定とは異なります。 BTW:他の何もTC/MSTestによって記録されません。 – Campey

+0

ウォールに感謝、トリックをした! – DevDave

+6

Visual Studio 2012(少なくともエクスプレス版以上)MsTest.exeは 'vstest.console.exe'と呼ばれ、 にあります。C:\ Program Files(x86)\ Microsoft Visual Studio 11.0 \ Common7 \ IDE \ CommonExtensions \ Microsoft \ TestWindow \ vstest.console.exe' – dwonisch

関連する問題