XUnit HttpStatusCode 不包含 should 的定义

SAT*_* P 2 c# unit-testing .net-core asp.net-core

我正在编写 XUnit 测试用例。我收到以下错误

错误 CS1061“HttpStatusCode”不包含“应该”的定义,并且找不到接受“HttpStatusCode”类型的第一个参数的可访问扩展方法“应该”(您是否缺少 using 指令或程序集引用?)

错误说明了什么以及如何解决它。请任何人尝试帮助我。

谢谢..

Tao*_*hou 5

对于Should,没有内置Should来实现类似的功能Assert.Equal(HttpStatusCode.OK, defaultPage.StatusCode);

你可以尝试shouldly简化Assert.Equal

  • 安装包应该
  • 推荐人 using Shouldly;
  • 用途

        public async Task Test()
    {
        var server = new TestServer(WebHost.CreateDefaultBuilder()
            .UseStartup<TestStartup>()
            );
        var response = await server.CreateClient().GetAsync(@"/test");
        response.StatusCode.ShouldBe(System.Net.HttpStatusCode.OK);
    
        var result = await response.Content.ReadAsStringAsync();
    
    }
    
    Run Code Online (Sandbox Code Playgroud)