在Post()之后运行Request.Get()时出现意外的HTTP 404

时间:2015-10-29 03:06:49

标签: junit4 apache-httpclient-4.x fluent

有没有办法隔离HTTP连接以防止在使用apache httpclient的Fluent API时出现以下行为?

我有一些使用Fluent API执行获取和发布的junit测试。

当我单独运行junit tests 时,我得到了预期的结果。 Test1: Request.Post(https://host:port/xxx") HTTP 200 Test2: Request.Get(https://host:port/yyy") HTTP 200

当我作为测试套件的一部分运行junit测试时,我得到的结果不正确。 Test1: Request.Post(https://host:port/xxx") HTTP 200 Test2: Request.Get(https://host:port/yyy") HTTP 404

1 个答案:

答案 0 :(得分:0)

为了解决这个问题,我使用了HttpClient和每条路由的执行程序。

HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
Executor xxxExecutor = Executor.newInstance(httpClientBuilder.build());
Executor yyyExecutor = Executor.newInstance(httpClientBuilder.build());

xxxExecutor.execute(Request.Post(https://host:port/xxx"))...
yyyExecutor.execute(Request.Get(https://host:port/yyy"))...