接口测试
Jsoup框架:java接口测试框架
1.创建连接对象
Connection 连接对象=Jsoup.connect(String URL);
2.创建文本对象
Document 文本对象=连接对象.请求方法();
3.传递参数
连接对象.data(String 参数名,参数值)
4.创建元素对象
Element 元素对象=文本对象.方式()
方法:
text(),元素对象标签文本
attr(String 属性名),对应的属性值
5.创建页面元素对象列表
Elements 对象列表=文本对象.select(cssSelector)
import java.io.FileWriter;
import java.io.IOException;
import org.jsoup.Connection;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class JsoupDemo {
public static void main(String[] args) {
Connection conn = Jsoup.connect("https://www.baidu.com/");
try {
Document doc = conn.get();
Elements elements = doc.select(".mnav");
for (Element e : elements) {
System.out.println(e.text() + ":" + e.attr("href"));
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
selenium与jsoup:
selenium主要是关注页面上的操作,以及操作步骤、先点击什么,后点击什么等
jsoup只关注接口的地址、接口的传参、以及接口的响应等
HttpClient:java接口测试框架
1.创建可关闭的HttpClient对象
CloseableHttpClient 可关闭的HttpClient对象=HttpClients.createDefault();
2. 创建http请求对象
Http请求方式 http请求对象=new Http请求方式(String URL)
3.创建http结果响应对象
HttpResponse Http响应对象=HttpClient对象.execute("Http请求对象")
4.创建http实体对象
HttpEntity http实体对象=http响应对象.getEntity();
5.实体对象返回字符串形式
EntityUtils.toString(Http实体对象);
import java.io.FileWriter;
import java.io.IOException;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
public class HttpclientDemo {
public static void main(String[] args) {
// 创建可关闭的HttpClient对象
CloseableHttpClient client = HttpClients.createDefault();
// 创建http请求对象
HttpGet get = new HttpGet("https://www.jd.com");
// 创建http结果响应对象
try {
HttpResponse response = client.execute(get);
// 创建http实体对象
HttpEntity entity = response.getEntity();
String html = EntityUtils.toString(entity);
FileWriter fw = new FileWriter("d:\\\\1\\\\httpclient.txt");
fw.write(html);
fw.close();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
閱讀更多 肥西金 的文章