怎么实现常用网络接口自动化测试框架应用?
一、RESTful(resourcerepresentationalstatetransfer)类型接口测试(一)GUI界面测试工具:jmeter
1、添加线程组
2、添加http请求
3、为线程组添加察看结果树
4、写入接口参数并运行
5、在查看结果树窗口查看结果
6、多组数据可增加CSVDataSetConfig(添加。csv格式的文件,并在参数值里以{x}格式写入)
此时变量值填写{变量名},上图x,y表示每次从文件里读取两个参数,分别命名为x,y(二)JAVA语言脚本测试(HttpClient)
1、GET请求接口测试1publicvoidTestGetthrowsURISyntaxException,ClientProtocolException,IOException{21、创建一个客户端对象3CloseableHttpClientclientHttpClients。createDefault();42、使用URIBuilder()来生成一个get类型的USI5URIurinewURIBuilder()。setScheme(http)6。setPort(8080)7。setHost(localhost)8。setPath(test1334Calc)9。setParameter(a,2)10。setParameter(b,3)。build();113、新建一个httpget类型请求对象,并将uri传入请求12HttpGetgetnewHttpGet(uri);134、新建响应对象,用于接收客户端执行get结果14CloseableHttpResponseresponseclient。execute(get);155。从响应对象中提取实际结果,与预期结果进行比对16if(response。getStatusLine()。getStatusCode()200){17System。out。println(EntityUtils。toString(response。getEntity()));18}19}
2、POST请求接口测试
样例(测一个输入两个参数求和的接口):1publicvoidTestPOST()throwsClientProtocolException,IOException{21。新建一个客户端对象3CloseableHttpClientclientHttpClients。createDefault();42。新建post类型请求对象,并传入uri5HttpPostpostnewHttpPost(http:172。31。6。155:8080test1334Calc);63。使用NameValuePair对参数进行打包7ListNameValuePairlistnewArrayListNameValuePair();8list。add(newBasicNameValuePair(a,1));9list。add(newBasicNameValuePair(b,2));104。对打包好的参数,使用UrlEncodedFormEntity工具类生成实体类型数据11Consts。UTF8设置服务器字符集类型12UrlEncodedFormEntityentitynewUrlEncodedFormEntity(list,Consts。UTF8);135。将含有请求参数的实体对象放入到post请求对象里14post。setEntity(entity);156。新建一个响应对象接收客户端执行post请求的结果16CloseableHttpResponseresponseclient。execute(post);177。从响应对象中提取实际结果,与预期结果进行比对18if(response。getStatusLine()。getStatusCode()200){19System。out。println(EntityUtils。toString(response。getEntity()));20}21}
3、自动化框架1RunWith(Feeder。class)2publicclassgetParameter{3Test4Source(datadatas。csv)数据源5publicvoidtestget(intx,inty,intexpect)throwsClientProtocolException,URISyntaxException,IOException{expect为预期结果,用于与实际结果进行比对6TestRESTfultestnewTestRESTful();TestRESTful为前边创建TestGet所属类7intreturnstest。TestGet(x,y);此处的为修改后的TestGet,添加了参数和返回值;8assertEquals(returns,expect);将结果与预期进行比较9}10}二、WebService接口测试(一)GUI界面测试工具:SoapUI
1、新建项目
2、输入WSDL地址或文件
3、修改?内的数据
4、开始测试(二)JAVA语言脚本测试(HttpClient)
1、GET请求接口测试1publicinttestGet(intx,inty)throwsRemoteException{2Stringtargethttp:172。31。6。94:8080axis2servicescalc?wsdl;传入地址3创建一个CalcStub对象4CalcStubstubnewCalcStub(target);5CalcStub。AddaddnewCalcStub。Add();6传入参数7add。setX(x);8add。setY(y);9AddResponseresponsestub。add(add);结果10intresultresponse。getreturn();11returnresult;12}
2、POST请求接口测试1publicstaticvoidtestPOST(inta,intb)throwsClientProtocolException,IOException{2创建客户端对象3CloseableHttpClientcliHttpClients。createDefault();4HttpPostponewHttpPost(http:172。31。6。61:8080axis2servicesMyService?wsdl);5将soap协议内容添加进来,即soapXML字符串6StringsoapXMLsoapenv:Envelopexmlns:soapenvhttp:schemas。xmlsoap。orgsoapenvelopexmlns:wshttp:ws。day3。com7soapenv:Header8soapenv:Body9ws:add10ws:aaws:a11ws:bbws:b12ws:add13soapenv:Body14soapenv:Envelope;15将String转换成实体类型16StringEntityentitynewStringEntity(soapXML,Charset。forName(UTF8));17po。setEntity(entity);18CloseableHttpResponserecli。execute(po);19System。out。println((re。getEntity())。toString());20}
感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接免费拿走:
2000多本软件测试电子书(主流和经典的书籍应该都有了)
软件测试自动化测试标准库资料(最全中文版)
项目源码(四五十个有趣且经典的练手项目及源码)
Python编程语言、API接口自动化测试、web自动化测试、App自动化测试(适合小白学习)
这一些资料,对做【软件测试】的朋友而言应该是较为完整了,这类学习资料也陪伴我走过了最艰难的路程,希望也可以帮助到你!万事要尽早,尤其是技术行业,一定要提升技术功底。
以上软件测试资料需要的可以私信我关键词(资料)免费获取