如何用Fiddler 拦住RestAssured发出的请求

RestAssured + TestNG 测试get 接口方法参见以下URL。Post接口使用方法类似的:

https://www.cnblogs.com/testertry/p/9903759.html

接下来进入正题,接口测试调试过程中,期望结果同预期有差,不确定是自己没写对还是接口有bug,接口server 也没有给出特别多的线索,于是想用fiddler 拦截一下,和开发给出的post man connection发出的请求进行对比。

然鹅用RestAssured 发出的请求并不能直接被fiddler 拦截,需要在初始化的时候做出如下配置:

RestAssured.proxy("localhost", 8888);

为RestAssured设置了代理之后,就能被fiddler 拦截住了。

但是还是有问题。会有证书不信任的报错存在:

sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

加入以下这行代码,问题解决:

RestAssured.useRelaxedHTTPSValidation()

发送的请求中有中文,还应加入如下这行代码。这与拦截成功与否便没有关系了,加入这行代码后能够从fiddler的信息头处查看编码方式变成UTF-8。

RestAssured.config = RestAssured.config()
                .encoderConfig(EncoderConfig.encoderConfig().defaultContentCharset("UTF-8"));
原文地址:https://www.cnblogs.com/testertry/p/10669478.html