0

私はまだいくつかのプロジェクトで Subsonic 2 を使用しています。少しハックしたい。GIT リポジトリから最新のプルを取得しました。VS2008 Pro を使用しています。

SubSonic.Test プロジェクトを見ると、参照されている mbUnit dll には「MbUnit.Framework 2.4.197」という記述がありますが、ファイルのバージョンは「1.0.2700.29885」です。したがって、mbUnit 2.4 で作業していると思います。

プロジェクトを正常にコンパイルできますが、Gallio に SubSonic.Tests\bin\Debug\SubSonic.Tests.dll 内のテストを認識させることができません。「テストが見つかりません」というメッセージが表示されるだけです。

このシナリオのためにネット上で docco を探すのに数時間費やしましたが、実際には何もありません。また、GIT オリジンとの歩調がさらにずれているため、既存のプロジェクトを変更することにも熱心ではありません。マジック GUIDS をテスト プロジェクト ファイルに貼り付けました。

   <ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>

TestDriven.Net はこれを行います。

------ Test started: Assembly: SubSonic.Tests.dll ------

Gallio TestDriven.Net Runner - Version 3.1 build 397

Test Files:
 C:\data\Subsonic\2_x\SubSonic-2.1\SubSonic.Tests\bin\Debug\SubSonic.Tests.dll

Start time: 5:02 PM
Verifying test files.
Initializing the test runner.
Running the tests.
Disposing the test runner.
Stop time: 5:02 PM (Total execution time: 1.752 seconds)

Test Report: file:///C:/Documents%20and%20Settings/User/Local%20Settings/Temp/Gallio/TDNetRunner/Report/SubSonic.Tests.dll.html
** NO TESTS WERE RUN (No tests found) **

これはまた Gallio を使用していることがわかります。確かにガリオをアンインストールする必要はありませんか?! 現在のプロジェクトで mbUnit と一緒に使用していますが、問題なく動作します。

2 年前、私はこれらの単体テストを子猫のようにゴロゴロ鳴らしていましたが、どのように行っていたかは一生思い出せません。現在はVSのバージョンになっており、アップグレードで構成を失った可能性があります。SubSonic v2.1 単体テストが機能している誰かを見つけて、次のように尋ねたいと思っています。テストをどのように実行していますか?

編集: 最後に Rob Conery に連絡したところ、彼は TD .NET が mbUnit 1 テストを実行していないことを (少しがっかりしながら) 確認しました。彼は、SubSonic 2 が活発に開発されていたときに td.net 1.3 が使用されていたと考えていますが、そのバージョンの過去のダウンロードは見つかりません。

それは、私がテストしていない resharper を残します。

テスト フレームワークを mbUnit 3 にアップグレードすることにした場合は、それを GutHub に投稿します。

Yann さん、コメントありがとうございます。あなたを回答者として選択しました。

更新: Subsonic 2 Github ソースは、2011 年 6 月頃に mbUnit 3 にアップグレードされました

4

1 に答える 1

0

SubSonic.Testsに対してコンパイルされMbUnit v1.0ます。Gallio は、このような古いバージョンの MbUnit をサポートしていません。MbUnit アセンブリ ( Dependencies\MbUnit.Framework.dll) を互換性のある最新のビルドに置き換えてみてください。v2.4.2 である必要があります。これは、Gallio ビルド サーバーにあります。残念ながら、v1.0 と v2.4 の間の重大な変更についてはわかりません。

于 2011-01-10T09:14:33.613 に答える