バックグラウンド:
現在、データベースをヒットしてテストを行う約 10 のユニット/統合テスト プロジェクトがあります。データベースにヒットする各テスト クラスIntegrationTestは、 という別の dll にあるというクラスから継承しますTestBase。TestBaseデータベースへの接続文字列を格納する構成ファイル (nhibernate_log4net.cfg.xml) が含まれています。
私たちの開発チームは約 7 人か 8 人のグループです。2 人のチーム メンバーが同時に単体テストを実行すると、多くのテストで共通のデータが追加および削除されるため、競合が発生します。これにより、2 人の開発者の間でテストが誤って失敗する可能性がありました。
レイアウト:
TestBase.dll
IntegrationTest.cs ( [DeploymentItem("nhibernate_log4net.cfg.xml"]を含む)
nhibernate_log4net.cfg.xml
nhibernate_log4net.cfg.Developer 1.xml (変換ファイル)
nhibernate_log4net.cfg.Developer 2.xml (変換ファイル)
. ..
UnitTest.dll
参照 -> TestBase.dll
MyUnitTest.cs (TestBase.dll の IntegrationTest から継承)
問題:
私の考えは、チーム内の各開発者SlowCheetahの dll の構成ファイルで xml 変換を使用することでしたが、変換されたファイルは単体テストのOutTestBaseディレクトリにコピーされません。基本構成ファイル (変換されていないもの) は、Outディレクトリにコピーされるファイルです。そもそも構成ファイルを取得するために使用しなければならない属性が原因だと感じています。[DeploymentItem("nhibernate_log4net.cfg.xml")
単体テスト プロジェクトとは別の dll に含まれている xml 構成ファイルで xml 変換を使用する方法はありますか?