テストで使用する必要があるデータベースへの接続文字列を取得するために、 XUnitプロジェクトで次のことを実行しようとしています。
public class TestFixture : IDisposable
{
public IConfigurationRoot Configuration { get; set; }
public MyFixture()
{
var builder = new ConfigurationBuilder()
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
Configuration = builder.Build();
}
public void Dispose()
{
}
}
Startup.csで使用すると、WebAPIおよびMVCテンプレートで完全に機能するため、非常に奇妙です。appsettings.json
さらに、このコードは以前は dnx を使用して RC1 で動作していましたが、すべてを RC2 と Core CLI に更新したため、xunit クラス ライブラリのルートにあるファイルを見つけることができなくなりました。
これが私のテストクラスの外観です。構成をどのように呼び出しているかがわかります。
public class MyTests : IClassFixture<MyFixture>
{
private readonly MyFixture _fixture;
public MyTests(MyFixture fixture)
{
this._fixture = fixture;
}
[Fact]
public void TestCase1()
{
ICarRepository carRepository = new CarRepository(_fixture.Configuration);
}
}