moqとxunitを使用してasp.netコアに非常に簡単な単体テストを書こうとしています。 しかし、ユニットテストを実行するとエラーが発生します。ユニットテスト中にasp.netコアでmoqを使用する
のStackTrace:Moq.Mock 1..ctor(MockBehavior behavior, Object[] args) at Moq.Mock
1..ctorで (MockBehavior行動)Moq.Mock`1..ctor()で
ファイルまたはアセンブリをロードできませんでした「System.Core、バージョン= 4.0 .0 '。
以下は私のコードとproject.jsonファイルです。
{
"version": "0.1.0-*",
"testRunner": "xunit",
"dependencies": {
"Moq": "4.5.22",
"xunit": "2.2.0-beta2-build3300",
"dotnet-test-xunit": "2.2.0-preview2-build1029",
"IntegraPay.Domain": {
"version": "1.0.0-*",
"target": "project"
},
"Integrapay.RegistrationApplication": {
"version": "",
"target": "project"
},
"Microsoft.NETCore.Portable.Compatibility": "1.0.1"
},
"frameworks": {
"netcoreapp1.0": {
"imports": [
"dotnet5.6",
"netcoreapp1.0",
"net45",
"net451"
],
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.0.0"
}
}
}
}
}
[Fact]
public async void GetAttributes()
{
Mock<IRegistrationRepository> repo = new Mock<IRegistrationRepository>();
RegistrationManager manager = new RegistrationManager(repo.Object);
var item = await manager.CreateModel("1234");
}
つまり、asp.netコア1.0でmoqを使用したい人は、moqバージョン4.6.38-alphaを使用してください。 4.5.22の安定リリースは何らかの理由で動作しません。 – maxspan
これらのインポートが実際にどのように機能しているかわかりませんが、dnx451を削除すると解決しました – VorobeY1326