关于接口自动化中HttpDelete简述

        最近在工作写一个接口自动化框架。以前只是小规模写过这样的接口自动化,现在希望将项目中所有的接口都包含进去本着持续修改的原则,一开始可以所有细枝末节功能不能完全实现,但核心功能已全部实现。

        技术上总体应用:Java+Testng+Maven实现。数据源取自三种:Excel文件、MySQL数据库、其他类型文件。说跑题了,哈哈。总体性的细节以后有机会写。先说一个问题。

实际工作中的HttpDelete需要传一个json,但是实际Apache HttpClient API中的HttpDelete不支持设置Entity。通过查看源码与API文档,发现原来delete与Post和Put不同。

因为HttpPost与HttpPut继承了HttpEntityEnclosingRequestBase类所以可以使用父类的方法setEntity(HttpEntity entity);

如若要使HttpDelete可以使用setEntity方法可以写一个类继承HttpEntityEnclosingRequestBase。

如:我是这样写

public class HttpDeleteWith extends HttpEntityEnclosingRequestBase {

public final String METHOD_NAME = "DELETE";

@Override

public String getMethod() {

// TODO Auto-generated method stub

return METHOD_NAME;

}

public HttpDeleteWith(final URI uri){

super();

setURI(uri);

}

public HttpDeleteWith(final String uri){

super();

setURI(URI.create(uri));

}

public HttpDeleteWith(){

super();

}

这样写是否有问题,欢迎各位私信我。

你可能感兴趣的:(关于接口自动化中HttpDelete简述)