可以测试方法参数上必需的注释吗?

 注释在运行时工作正常,但我可以用单元测试来测试它吗?


我试着调试它,但似乎测试只是跳入,因为直接调用了该方法。


测试:


var result = (StatusCodeResult)await this.Sut.Values(1, null);


result.StatusCode.Should().Be(HttpStatusCode.BadRequest);

方法:


public async Task<IActionResult> Values(int identifier, [Required] SomeType query)

{

    var readResult= await this.resultProvider.GetValues(identifier, query);

    if (readResult.Failed)

    {

        var error = new ErrorRepresentation(resultReadResult.Message);


        return this.StatusCode(error.StatusCode);

    }


    return this.Ok(readResult.Value);

}

我应该得到带有 400 代码的 http 响应,但我找不到 404。


慕森卡
浏览 50回答 1
1回答

回首忆惘然

我的猜测是它正在寻找一个替代方法,该方法将第二个参数设置为可选但找不到它,因此是 404。这是一个路由问题,尝试为您的测试添加自定义路由。
打开App,查看更多内容
随时随地看视频慕课网APP