![](/img/trans.png)
[英]How to read a ConnectionString from appsettings.json in a Razor Pages Project
[英]How to read appsettings.json in xunit test project?
我正在尝试为在 MVC 控制器中编写的方法之一编写测试用例,在该方法中我正在读取 AppSettings.json 文件。 如下
public class MemberController : ControllerBase
{
IMemberRepository _memberRepository;
public PayPalKeys payPal;
public ActiveDirectory activeDirectory;
private static GraphServiceClient _graphServiceClient;
public MemberController(IMemberRepository member, IOptions<PayPalKeys> payPal, IOptions<ActiveDirectory> activeDirectory)
{
_memberRepository = member;
this.payPal = payPal.Value;
this.activeDirectory = activeDirectory.Value;
}
private IConfigurationRoot LoadAppSettings()
{
try {
var config = new ConfigurationBuilder()
.SetBasePath(System.IO.Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json", false, true)
.Build();
-
-
-
}
catch(Exception ae){}
}
}
下面是我的测试代码
[Fact]
public void Payment()
{
var memberRepositoryManagerMock = new Mock<IMemberRepository>();
var members = new Members() {};
var controller = new MemberController(memberRepositoryManagerMock.Object, GetPayPalConfigurationMock().Object, GetActiveDirectoryConfigurationMock().Object);
var result = controller.MakePayment(members);
}
并且来自控制器的该方法给出了异常,因为未找到配置文件“appsettings.json”并且不是可选的。 物理路径是“F:\\API.Test\\bin\\Debug\\netcoreapp2.2\\appsettings.json”。
在这里,我不明白如何在测试用例代码中模拟“appsettings.json”部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.