7

MSTest で hibernate.cfg.xml を適切に出力ディレクトリにコピーした経験のある人はいますか? MSTest はすべて、hibernate.cfg.xml が見つからないというエラーで失敗しますが (常にコピーするように設定しています)、MBUnit テストはパスします。

4

5 に答える 5

12

テストの 1 つに DeploymentItemAttribute を追加するか、.testrunco​​nfig ファイルを編集してそのファイルを Deployment リストに追加してみてください。

于 2008-08-21T15:07:13.223 に答える
4

localtestrun.testrunco​​nfig (ソリューション アイテム フォルダー内) を編集します。デプロイ オプションを選択し、デプロイする追加フ​​ァイルのリストに hibernate.cfg.xml ファイルを追加します。ファイルは、テストが実行される出力ディレクトリにコピーされます。

于 2008-11-11T11:05:32.000 に答える
2

数週間前に同じことに遭遇しました - これは実際にはMSTest のバグです - これは最近のService Pack リリースで修正されたと思います(まだ「アクティブ」と表示されていますが)。そうでない場合は、hibernate.cfg.xml を直接参照するだけで済みました (ずさんですが、テストには機能します。これは、"TestResults" フォルダーからテスト プロジェクトの hibernate.cfg.xml ファイルを参照しています)。

 try
           {
                sessionFactory = new Configuration()
                    .Configure()
                    .BuildSessionFactory();
            }
            // Assume we are in "MSTest mode"
            catch (Exception)
            {
                sessionFactory = new Configuration()
                    .Configure(@"..\..\..\Program.Tests\" + @"\hibernate.cfg.xml")
                    .BuildSessionFactory();
            }
于 2008-10-07T13:41:25.470 に答える
1

答えではなく回避策:NHibernateはプログラムによる設定をサポートしています。そのため、独自のネイティブプロパティ/構成ファイルを記述して、起動時に休止状態の構成に解析できます。

于 2008-10-07T09:20:29.847 に答える
1

NHibernate 構成ファイルを埋め込みリソースとしてマークし、アセンブリ リソースから構成ファイルを読み取る Configuration.Configure() オーバーロードを使用するのが好きです。

于 2008-10-07T14:16:00.610 に答える