问题描述
我有一个dotnet项目,正在构建一个实施测试例程
这是我的代码:
Base-> BaseProject-> Controllers-> SensorController
[Route("[controller]")]
[ApiController]
public class SensorController : Controller
{
private readonly SensorContext _context;
public SensorController(SensorContext context)
{
_context = context;
}
[HttpGet("api/")]
public async Task<ActionResult<IEnumerable<Sensor>>> GetTodoItems()
{
return await _context.Sensor.ToListAsync();
}
}
在我的TestProject中,我得到了:
Base-> TestProject-> Fixtures-> TestContext
public class TestContext
{
public HttpClient Client { get; private set; }
private TestServer _server;
public TestContext()
{
SetupClient();
}
private void SetupClient()
{
_server = new TestServer(new WebHostBuilder().UseStartup<Startup>());
Client = _server.CreateClient();
}
}
Base-> TestProject-> SensorApiTest.cs
public class SensorApiTest
{
private readonly TestContext _testContext;
public SensorApiTest()
{
_testContext = new TestContext();
}
[Fact]
public async Task Values_Get_ReturnsOkResponse()
{
var response = await _testContext.Client.GetAsync("/Sensor/api");
response.EnsureSuccessStatusCode();
Assert.Equal(HttpStatusCode.OK,response.StatusCode);
}
}
如果我运行基础项目并使用失眠症发送请求,我得到的响应就很好。但是使用dotnet测试运行TestProject会返回404错误。 该项目的依赖项工作正常,我不知道为什么它不运行。
有人可以帮助我吗?谢谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)