TryTesting
OSX 上の MonoDevelop(MD) (3.0.4.6) で呼び出される C# NUnit テスト ライブラリを作成した場合、ターミナル/コマンド ラインからこれらのテストをどのように実行すればよいでしょうか (自動ビルドに追加できるようにするため)。
一般式は次のとおりであることを知っています。
nunit-console .../TryTesting/bin/Debug/TryTesting.dll
また
mono nunit-console.exe .../TryTesting/bin/Debug/TryTesting.dll
ただし、MonoDevelop をインストールしたときに作成される環境を考えると、それだけでは不十分です。
次の出力とエラーが表示されます。
NUnit version 2.4.8
Copyright (C) 2002-2007 Charlie Poole.
Copyright (C) 2002-2004 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov.
Copyright (C) 2000-2002 Philip Craig.
All Rights Reserved.
Runtime Environment -
OS Version: Unix 12.1.0.0
CLR Version: 2.0.50727.1433 ( 2.10.9 (tarball Mon May 7 20:25:51 EDT 2012) )
Missing method .ctor in assembly /private/var/folders/r6/wqmfjz8142z0z9vcg_7k9y140000gn/T/nunit20/ShadowCopyCache/3688_634830482326369170/Tests/assembly/shadow/52c5f76b/6c545c94_3e91abff_00000001/TryTesting.dll, type NUnit.Framework.TestFixtureAttribute
Can't find custom attr constructor image: /private/var/folders/r6/wqmfjz8142z0z9vcg_7k9y140000gn/T/nunit20/ShadowCopyCache/3688_634830482326369170/Tests/assembly/shadow/52c5f76b/6c545c94_3e91abff_00000001/TryTesting.dll mtoken: 0x0a000003
Could not load file or assembly 'nunit.framework, Version=2.6.0.12051, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77' or one of its dependencies.
実験の結果、この問題は /usr/bin と MD の間で nunit のバージョンが一致していないことが原因であると思われます。最新の NUnit バイナリをダウンロードし、プロジェクトの nunit.framework 参照をダウンロードしたコピーを指すように置き換えると、ダウンロードした nunit-console.exe を使用して実行できます。
したがって、おそらく問題は次のとおりです。
- nunit.framework への自動参照を削除し、NUnit の独自のディストリビューションをソース ツリーに含める必要がありますか?
- または、MonoDevelop には、呼び出す必要がある一致するバージョンの nunit-console がありますか?