什么是接口测试:测试
接口测试是项目测试的一部分,正如其名,它测试的主要对象是接口,是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与所测系统之间以及内部各系统之间的交互点。测试的重点是检查数据交互、传递、和控制管理过程以及系统间的相互依赖关系等。spa
接口测试的目的:.net
接口测试的目的是测试接口,尤为是那些与系统相关联的外部接口,测试的重点是要检查数据的交换,传递和控制管理过程,还包括处理的次数。外部接口测试通常是做为系统测试来看待的。设计
如何进行接口测试:对象
不是全部的团队均可以在一个隔离的测试环境中进行测试工做的,所以使得对外部接口的测试显得困难。咱们应该确保较早地与相关的组织协调好并肯定进行外部接口测试的方案。有时候相关的组织只是人工的静态的审阅一次数据而并不真正的用这些数据来测试。等等这些都增长了实际测试执行中遇到的风险,但有些时候是能够避免的。blog
如何设计接口测试用例?接口
首先,明确出发点。和全部的测试同样,接口测试出发点是你要证实所测的程序是错误的。以这个出发点为导向,你的设计行为就会尽可能朝这个方向发展,更易发现问题,不会出现大方向的误差。开发
其次,选择好测试对象。对于一个系统作接口测试选择好的测试对象是接口测试关键。一个系统有无数的接口,每一个接口若是分别测试,那将是很痛苦的一件事情,不光繁琐浪费,并且任何一个内部接口的变更,都将致使咱们用例的不可用。这里推荐把整个系统做为一个总体,选择整个系统提供给外部使用、交互的最外层接口做为你的测试对象,以此为测试对象的用例将有很好的健壮性,而且更高效。另外,根据数据的流向,又可将这些最外层的接口分为两类:一类是数据进入系统的接口;一类是数据流出系统的接口。进入系统的接口实际是咱们用例的执行调用的接口。可经过变化参数对这些接口进行调用,模拟外部的使用;而流出的接口则是咱们用例真正该验证的点。数据从哪里流出,流出时的状态如何,此时系统又是什么状态都是咱们所应该验证的。get
而后,确认完整的测试对象的功能:确认外部接口提供给使用这些接口的外部用户什么样的功能,外部用户真正须要什么样的功能。此两个功能必定要准确详细,用例的设计要严格按照测试对象功能设计才是正确的用例。效率
最后当出发点、对象、功能都肯定了,就能够真正设计用例了。下面详细介绍下如何去设计一个结构好、可读性高、渗透性强的接口测试用例。
接口测试用例设计和其余测试用例设计同样,都应该本着尽量的发现bug的目标。用例设计的内容应该包括:主要测试功能点、测试环境、测试数据、执行操做以及预期结果。
1)接口测试环境分为两种:一种是程序内部的环境;一种是程序的所调用外部接口的环境。用例在设计环境上有一个原则即:设计真实而危险的环境,不忽视偶发环境。真实,即你的用例在测试某种功能时,应该去思考这种状况发生时内部、外部环境是什么,经过各类手段将最准确的环境模拟出来。危险,即在这种环境下系统出问题的几率会很大。在设计用例环境时,若是两种环境都能达到你本用例的要求,更推荐选择更危险的环境。所谓偶发,即这种环境出现的几率很小。不要由于这种环境不多出现就无视它,开发极可能也是这种想法,此处颇有可能隐藏着问题。
2)接口测试测试数据分为接口参数数据和用例执行所需系统数据。数据的设计学问大,不要在设计、准备测试用例的数据上偷懒。要经过好的测试数据使用例查错的功能充分发挥。接口参数数据需对每一个参数根据测试接口的实际的功能进行分析,在符合业务逻辑的状况下进行逻辑组合排列,不要遗漏了某些边界值和错误点的数据。每一个用例执行所需系统数据和接口参数数据尽量的采用不同的数据,使用例更容易发现问题。
3)测试功能点,若是一个接口功能复杂时推荐对接口用例进行结构划分,这样子用例具备更好的可读性和维护性。接口划分原则为以接口提供的功能点的不一样进行合适粒度的划分。同一功能点的用例又可根据测试环境的不一样、数据的不一样进行用例的填充。
4)接口测试用例执行操做很是简单,就是所测接口的调用。
5)预期结果验证,这也是接口用例设计的很关键的一步,应该细而不冗余。所谓细,用例中应详细列出应该验证的点。每一个用例均需验证,不要由于前几个用例有验证就认为所有是正确的。避免一个用例中重复作相同的验证,提升测试用例的效率。