私はまだいくつかのプロジェクトで 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 にアップグレードされました