测试web API服务

本文关键字:服务 API web 测试 | 更新日期: 2023-09-27 18:01:22

我想测试给定Web API服务的方法。我可以通过添加一个测试项目、实例化控制器和测试方法来实现这一点。然而,我不想只测试方法,我想测试请求和响应。我在Java中做了类似的事情,像这样:

  private HttpServer server;
    @Before
    public void before() {
        this.server = Servidor.initializeServer();
    }
    @After
    public void stopServer() {
        server.stop();
    }
    @Test
    public void testaQueBuscarUmCarrinhoTrazOCarrinhoEsperado() {
        Client client = ClientBuilder.newClient();
        WebTarget target = client.target("http://localhost:8080");
        String conteudo = target.path("/carrinhos").request().get(String.class);
        Carrinho carrinho = (Carrinho) new XStream().fromXML(conteudo);
        Assert.assertEquals("Rua Teste", carrinho.getRua());
    }
现在,要做这样的事情,我必须运行我的web API项目来启动服务器,然后运行测试。有一种方法来编写代码吗?

测试web API服务

是的,你可以这样做,有一种叫做selfhosted web API的东西,看到这个给定的链接,你可以在同一行上构建你的测试项目。

http://www.asp.net/web-api/overview/hosting-aspnet-web-api/use-owin-to-self-host-web-api