关于HttpClient等概念,上面提到的几个神的文档很多。在这里,我们主要构建和运营我们自己所需的最小化框架。
第一,安装必要的环境
可以参考上一文档中的安装步骤
我们主要安装以下两个工具就可以了。
附注:这里唯一的差异是以下项目的JDK已在使用jdk8:
2、安装和配置maven
第二,开始编写第一个测试。
第一次测试,我们写了京东登录界面的功能,下面是具体的实现过程。
1、在intellij idea中创建Maven项目FirstAPITest,并添加以下相关性,如下图所示
在其中加上适当的依赖性。
注册信息!-编译源代码时使用的字符编码;编译maven时默认使用的GBK编码;通过属性设置字符编码;指示maven使用UTF-8进行编译-utf-8/!-group-groupstestexecshell/groupstest/properties dependencies dependency groupidorg . TestNG/groupping可以设置为运行工件id版本6/groupid artifactidhttpmime/artifact id Version 4 . 5 . 2/Version/dependency dependency groupid com . jcraft/Version/.-此参考无法下载,您可以手动下载,然后在maven中手动参考dependency groupIdnet。/groupid artifactid JSON-lib/artifact id版本2.4/version/dependency-!手动下载-dependency groupid commons-bean utils/groupid artifactid commons-bean utils/artifact id vever添加的参考软件包如下/system pattils/arg line groups $ { groups test }/groups includes include * */* te;/include/includes/configuration/plugin/plugins/build注意:上述json-lib中的软件包不会自动下载,因此请使用手动下载从项目根文件夹json(
之后在编辑器右侧找到Maven Projects插件,在FirstAPITest项目下的LifeCycle中点击 “test”,如下图所示标识1所示。等待项目构建完成后,再点击Maven Projects中的Reimports按钮,如下图所示标识 2所示。
该操作是让maven把我们需要用到的Lib自动下载下来。如果之前已经下载过了,则只要单击标识2就可以
如下图所示表示上述标识1的test构建完成
2、创建第一个接口测试
FirstAPITest项目中,在目录test->java下新建一个类Fir,如如下图所示
2.1 首先使用Fiddler查看京东登录接口
写了一会Fiddler的使用方法,但是后来还是觉得网上这些已经写的相当具体了,就直接粘贴链接来更好
下面我们着重看下京东登录接口在Fiddler中的查看。这里我在登录时,用户名和密码都是随便写成test
则在Fiddler中捕获到的Http请求可看到,如下图所示的情况
上面中可看到红线标注的请求就是京东登录时,我们捕获到的HTTP请求
可看到该请求是Post类型,后面是请求对应的URL
然后看下右边,这里主要看Inspects这个标签里面的内容,其他标签可看上面链接里面介绍
该标签里面分上下两部分,上面是请求相关的内容,下面是响应相关的信息
上部分我们可以看下WebForms里面的内容,如下图所示
上面红色框中显示的是在京东登录对应的参数。
下面红色框中显示的是我们进行登录后,接口返回值,这里我们是看JSON格式的返回值
通过上面,我们就可得知京东登录接口的请求类型、请求URL、请求参数。有了这些我们就可以创建一个最简单的登录接口请求
2.2使用httpclient使用CSDN登录接口
在刚才创建的类Fir 输入下面内容,这里我们使用Testng作为接口单元测试框架:
- import org.a;
- import org.a;
- import org.a;
- import org.a;
- import org.a;
- import org.a;
- import org.a;
- import org.a;
- import org.a;
- import org.;
- import java.u;
- import java.u;
- public class FirstTest {
- private HttpClient httpClient = new DefaultHttpClient();
- private HttpPost httppost;
- private HttpResponse response;
- private HttpEntity entity;
- private String postResult = null;
- @Test
- public void loginJDTest() {
- String loginURL = ";&r=0.8636558873495089&version=2015";
- //创建一个httppost请求
- httppost = new HttpPost(loginURL);
- //创建Post请求参数
- List<NameValuePair> formparams1 = new ArrayList<NameValuePair>();
- (new BasicNameValuePair("uuid", "ac394a05-05c0-4667-9940-2848f0c03809"));
- (new BasicNameValuePair("eid", "Z6RZKBBPUUOORPHGELPNEZE6QHFEIE2IS4EQEBWOKH7VJAPDRIYUCSERJ3DLPNXRINL2ON3JC3IWHIG6L6PQMINSRY"));
- (new BasicNameValuePair("fp", "4d981fbd1f0cf45fc497eac85348c0f3"));
- (new BasicNameValuePair("_t", "_nthEAWj"));
- (new BasicNameValuePair("loginType", "c"));
- (new BasicNameValuePair("loginname", "test"));
- (new BasicNameValuePair("nloginpwd", "test"));
- (new BasicNameValuePair("chkRememberMe", ""));
- (new BasicNameValuePair("authcode", ""));
- (new BasicNameValuePair("pubKey", ""));
- (new BasicNameValuePair("sa_token", "B68C442BE645754F33277E701208059033541C4BBD4BE7A99A94927BD4C8D683E0AC371429CD887688E05A86C51F7C70CE1F231D2A69583750E3923BA39E17118B83A1A1535BAA4F550CDAFD8E0D42172C6687DE87E4A85EA190DE5B35DA60BB878C558875475CC8D7AC4EA721F380156DD8325B976C3C3266E677EACB204C70C0AE07DF75629F5D845602B5968A00D446F66A103CEE76CED0ED85D144B22580F9A9997B4C6606BBA4ACDA2E5675E1753923A7ED53A8CF7426C57380A1EEB3ACC25E396C9D72455D2F8A2EE727961C86C40637A355F83A8A4AC98AB4DB238EA80705100E51EAD01C3E00868DBD94D782ECF89A937893739D7EB48CD4A388D6DA51AF477822A57E7C2708E31DCEB0ADCA88A95D3FB8D20278B263B38D3679DFCD935E41A9612638671D699F59F0E494BF90B522095FF1E38DDB16541245EDE6703833CD15F1AE6D59575C55942B5306C749927362E5D3D7643BA060F53ACFC46F7222511019EBABBCA226F656DC896C7655A90663537C9BBB13657879FA7B99474D4EC9DB2879B409FCE973FA0A9E4E60F4160C3961B55C3401C7CC402917F6A0984544D666FB2C40B6001E1D740C97DAD646E692403DB4A3191F9C638549616672180317153D3EDC2FA55EA740BC4BAE3F5032FD1E3CE7BDA785DDFD5B65AFD0A4CAC07B18AB8B48FFE65E6C25D8E9D9C6B89D4AC495C2FE7937233EC85C60C8C3EA4A9368697EB136B02766908846FE18CF29CA73A07A0D9C3EA0EEB7A75369"));
- (new BasicNameValuePair("seqSid", "3845068114278942000"));
- try {
- (new UrlEncodedFormEntity(formparams1, "UTF-8"));
- response = (httppost);
- entity = re();
- // 在这里可以用Jsoup之类的工具对返回结果进行分析,以判断创建是否成功
- postResult = En(entity, "UTF-8");
- Sy("查看登录接口请求返回的结果:" + postResult);
- } catch (Exception e) {
- e.printStackTrace();
- }
- ();
- }
- }
2.3运行程序
直接在编辑器中右键单击,选择“Run “loginJDTest””, 如下图所示
运行后,可在日志中查看运行结果,如下图所示
则我们完成第一个接口测试啦~~~
1.《d3dcompiler 43 dll,干货看这篇!HttpClient +Testng进行接口测试入门》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《d3dcompiler 43 dll,干货看这篇!HttpClient +Testng进行接口测试入门》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.cxvn.com/gl/djyxgl/174509.html