接口测试2

一、WebService和HTTPService的区别

1.基于不同协议:HTTPService基于http协议,而WebService基于soap协议

2.跨域的处理:HttpService方式不能处理跨域,如果调用一个其它应用的服务就要用webService

3.处理数据效率不同:HTTPService效率较高,WebService能处理较复杂的数据类型

当你要调用一个你本服务的内容的时候,不涉及到跨域的问题,你可以使用HttpService的方式。
如果,你需要在后台调用一个其它应用的服务,这个时候,你必须要用webService的方式来调用。

简单的说WebService是不依赖于语言,不依赖于平台,可以实现不同的语言(通过 xml 描述)间的相互调用(方便异构系统的交互),通过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。     
Soap:是XML Web Service 的通信协议。
WSDL:(Web Services Description Language) WSDL 文件是一个 XML 文档,用于说明一组 SOAP 消息以及如何交换这些消息。

http速度效率更高,soap能处理复杂的数据。

SOAP是一个基于XML的协议交换消息,可以使用HTTP来传输这些信息。
事实上HTTP是SOAP消息的最常见的传输工具。soap将信息进行XML的序列化后,再用http协议的方式再打包进行传送,传送的方式还是tcp或者udp。做个比喻就好理解了。tcp

udp都是公路,暂且把tcp认为是一般公路,udp高速公路,soap和http就都是汽车,那么soap和http都可以在tcp和udp上跑。
说soap可以通过http来传送,实际就是说soap是小轿车,http是装轿车的卡车,把soap的信息装到http里面,然后再运输,当然走的道路还是tcp或udp。
说soap可以通过http协议来传输,这句话不太准确,比较准确第说法是:soap信息可以通过http协议包装后通过tcp或udp传输。

tcp、udp介绍:
TCP/IP协议是一个协议簇。里面包括很多协议的。UDP只是其中的一个。之所以命名为TCP/IP协议,因为TCP,IP协议是两个很重要的协议,就用他两命名了。
TCP/IP协议集包括应用层,传输层,网络层,网络访问层。

TCP与UDP区别总结:
1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接
2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保   证可靠交付
3、TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的
  UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用很有用,如IP电话,实时视频会议等)
4、每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信
5、TCP首部开销20字节;UDP的首部开销小,只有8个字节
6、TCP的逻辑通信信道是全双工的可靠信道,UDP则是不可靠信道

TCP(TransmissionControlProtocol,传输控制协议)是面向连接的协议,也就是说,在收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来(TCP三次握手),其中的过程非常复杂,只简单的描述下这三次对话的简单过程:主机A向主机B发出连接请求数据包:“我想给你发数据,可以吗?”,这是第一次对话;主机B向主机A发送同意连接和要求同步(同步就是两台主机一个在发送,一个在接收,协调工作)的数据包:“可以,你什么时候发?”,这是第二次对话;主机A再发出一个数据包确认主机B的要求同步:“我现在就发,你接着吧!”,这是第三次对话。三次“对话”的目的是使数据包的发送和接收同步,经过三次“对话”之后,主机A才向主机B正式发送数据。

TCP建立连接要进行3次握手,而断开连接要进行4次
A:数据传完了,可以停止吗?

B:消息收到,但是我还没有准备好,请稍等!

B:好了,可以停止了。

A:好的,过一会儿没有消息我就关闭啦。

UDP(User Data Protocol,用户数据报协议)
(1)UDP是一个非连接的协议,传输数据之前源端和终端不建立连接,当它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上。在发送端,UDP传送数据的速度仅仅是受应用程序生成数据的速度、计算机的能力和传输带宽的限制;在接收端,UDP把每个消息段放在队列中,应用程序每次从队列中读一个消息段。
(2) 由于传输数据不建立连接,因此也就不需要维护连接状态,包括收发状态等,因此一台服务机可同时向多个客户机传输相同的消息。
(3)UDP信息包的标题很短,只有8个字节,相对于TCP的20个字节信息包的额外开销很小。
(4) 吞吐量不受拥挤控制算法的调节,只受应用软件生成数据的速率、传输带宽、源端和终端主机性能的限制。
(5)UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的链接状态表(这里面有许多参数)。
(6)UDP是面向报文的。发送方的UDP对应用程序交下来的报文,在添加首部后就向下交付给IP层。既不拆分,也不合并,而是保留这些报文的边界,因此,应用程序需要选择合适的报文大小。

我们经常使用“ping”命令来测试两台主机之间TCP/IP通信是否正常,其实“ping”命令的原理就是向对方主机发送UDP数据包,然后对方主机确认收到数据包,如果数据包是否到达的消息及时反馈回来,那么网络就是通的。

TCP UDP
TCP与UDP基本区别
  1.基于连接与无连接
  2.TCP要求系统资源较多,UDP较少;
  3.UDP程序结构较简单
  4.流模式(TCP)与数据报模式(UDP);
  5.TCP保证数据正确性,UDP可能丢包
  6.TCP保证数据顺序,UDP不保证
  
UDP应用场景:
  1.面向数据报方式
  2.网络数据大多为短消息
  3.拥有大量Client
  4.对数据安全性无特殊要求
  5.网络负担非常重,但对响应速度要求高

二、连接fiddler:设置代理
ipconfig IPV4 主机名
netstat -anop tcp查看端口监听是否正常

fiddler访问https请求:
勾选options-HTTPS-Decrypt Https traffic
https://jingyan.baidu.com/article/f54ae2fc680be81e92b849ed.html

三、
接口测试工具:
浏览器插件:Poster、Postman、HttpRequester 简单的接口测试。
独立的接口工具: Jmeter(支持SOAP)、 robot framework(RequestsLibrary) 、soapUI(SOAP协议)

1,发包:

Get请求:  https://www.baidu.com/su?ie=utf-8&wd=%E6%8E%A5%E5%8F%A3&_=1526698704762

?前的是接口地址
?后面的是参数,参数和参数之间用&分隔,=前是参数名,=后是参数值

1,修改wd的参数值,模拟不同的请求
2,将请求参数转换到Parameters中

Post请求:
Postdata填写到Patameters
rawdata写法

2,拦截包

请求的拦截、修改再重发:(post请求)
在UI生成报文时拦截,并且可以修改报文再发送
tamper data  Tamper拦截并修改  Submit直接提交不修改  abort request忽略这个请求,不要发出去    
tamper ie

原文地址:https://www.cnblogs.com/lp475177107/p/9908334.html

时间: 2024-10-18 09:11:52

接口测试2的相关文章

微信接口测试

<!docType html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimu

Python+Requests接口测试教程(1):Fiddler抓包工具

本书涵盖内容:fiddler.http协议.json.requests+unittest+报告.bs4.数据相关(mysql/oracle/logging)等内容.刚买须知:本书是针对零基础入门接口测试和python+requests自动化的,首先本书确实写的比较基础,对基础内容也写的很详细,所以大神绕道. 为什么要先学fiddler? 学习接口测试必学http协议,如果直接先讲协议,我估计小伙伴们更懵,为了更好的理解协议,先从抓包开始.结合抓包工具讲http协议更容易学一些. 1.1 抓fir

接口测试概述:概念、目的、流程、工具、技能以及接口用例设计

一.什么是接口测试 二.接口测试流程 三.接口测试目的 四.接口测试用例设计 五.接口测试内容 六.接口测试工具 七.接口测试需要掌握的知识

chrome插件 postman插件 接口测试、API &amp; HTTP 请求调试工具

Postman 是一个非常棒的Chrome扩展,提供功能强大的API & HTTP 请求调试. 它能够发送任何类型的HTTP requests (GET, HEAD, POST, PUT..),附带任何数量的参数+ headers. 支持不同的认证机制(basic, digest, OAuth),接收到的响应语法高亮(HTML,JSON或XML). Postman 能够保留了历史的请求,这样我们就可以很容易地重新发送请求,有一个“集合”功能,用于存储所有请求相同的API/域. 这个扩展还有一些更

jmeter关联和接口测试的内容

[接口测试之添加测试计划-线程组-sampler] 1.建立测试计划    只要打开执行Jmeter.bat,就会有Jmeter的桌面运行界面出来,会自动建立一个测试计划,如下图所示: 2.添加完测试计划后,就要添加对应的线程组,所有的测试步骤都是在线程组下面执行的,如下所示: 添加完成后,就可以看到自己所添加的线程组了. 由于我是要测试多个接口,为了方便控制,我是为每一个业务逻辑建立了对应的线程组. 3.根据自己测试的接口类型,建立对应的测试步骤,我这里就是HTTP接口,所以请求是基于HTTP

接口测试 总结

前言: 本文主要针对http接口进行测试,使用Jmeter工具实现. Jmter工具设计之初是用于做性能测试的,它在实现对各种接口的调用方面已经做的比较成熟,因此,本次直接使用Jmeter工具来完成对Http接口的测试. 1.介绍什么是接口 现在最常用的2种接口就是webservice和http api接口,webservice接口是走soap协议通过http传输,请求报文和返回报文都是xm格式,可以通过jme.soapui工具进行测试: http api接口是走http协议通过路径来区分调用的

Python 接口测试(一)

1. 概念: 接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点.测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等. 2.    环境准备: (1.)安装python https://www.python.org/downloads/ 下载你想用的版本(本文介绍的版本是3.5的版本).安装后,添加系统环境变量.在cmd中输入python, (2.)安装requests库. https://pypi.pyth

Python 接口测试(五)

五:使用python进行组织编写接口测试用例 接口测试其实就是几个步骤. 拿到接口的url地址 查看接口是用什么方式发送 添加请求头,请求体 发送查看返回结果,校验返回结果是否正确 明白了接口测试的测试步骤,那么我们就可以来组织我们的代码. import requests # 接口的url url = "http://fanyi.baidu.com/v2transapi" # 接口的参数 params = { "from":"en", "

接口测试-测试人员必备技能

接口测试,其实并没有那么可怕,但是作为测试人员也是必不可少的技能. 接口分为:内部接口和外部接口. 内部接口:是浏览器与服务器的接口.这个很容易理解,web开发一般分前端和后端,前端开发人员用html/css/javascript等技术.后端开发人员用php/java/python等各种语言.用户输入的数据是输入到前端页面上.怎样把这些数据传递到后台呢?通过http协议的get.post请求来实现前后端的数据传递.这也可以认为是接口测试,这通常称之为内部接口. 外部接口:大部分都是服务端与服务端

关于接口测试的好东东,自己的整理的

什么是接口测试? 接口是指系统模块与模块或系统与系统间进行交互,一般我们用的多的是HTTP协议的接口.WebService协议的接口,还有RPC(Remote Procedure Call Protocol)--远程过程调用协议 的接口.? 不管是哪种接口,其本质就是发送一个request,然后服务器响应后返回一个response,然后我们对response进行分析,这即是接口测试. 为什么要做接口测试? 随着系统越来越多,以及复杂性越来越高,为了保证系统的独立性,也为了使业务更加的独立,系统间