接口测试面试题

1.怎么样做接口测试?

由于我们项目前后端调用主要是基于http协议的接口,所以测试接口时是通过工具或代码模拟Http请求的发送与接收。我们常用的工具主要是postman、jmeter、soupUI,也可以用接口自动化来实现,发送请求用断言来判断。


2. 接口测试的重点是什么?

测试过程中确保自己接口请求地址、参数传参正确性

测试过程中关注服务器返回,例如status、code、msg信息,数据库表信息更改,日志信息;特别是报错的时候,需要通过日志帮助排查问题。


3. 在接口测试中如何保证接口的正确性?

根据测试用例去执行测试,保证参数非法/为空都有考虑进去,且业务逻辑可以走通。


4. 假如发现前台数据显示错误,如何定位问题?

查看前台调用的接口是否正确

查看数据库中初始存储的数据是否正确

查看接口调取过来的数据是否正确


5. 请列出接口测试用例的设计思路或方法?

首先必要的了解接口需求,查看概要设计文档,弄懂业务逻辑和功能模块

先保证这个接口功能是好的,也就是输入正常的参数输入,是否可以返回正确的结果

然后考虑接口异常验证:包括必填项验证、长度、类型异常等;比如说手机号11位,输入非11位,10位,12位的来验证

还有需要考虑接口的业务逻辑,比如说必须执行了回款计划,才能修改标的状态到还款中。

一些必要的接口安全验证要考虑到,例如注册接口中传入的密码是需要加密的;还有就是权限这块,必须是已登录实名的账户才能投资,这跟业务逻辑是一样的。


6. 接口测试用例是怎么写的?

编写用例的时候注意用例内容包括用例Id、接口名称、请求方式、接口地址、用例标题、输入参数、预期结果(包括返回结果,数据表字段变化)。


7. http请求报文是由哪几部分组成?

http请求报文是由请求头、请求行、请求正文组成


8.如何开展接口测试?

规范接口文档输出

分层测试

    将客户端测试工作量的一部分转移到接口测试

        数据的逻辑以及正确性验证拆分到接口层来做

        客户端曾更多的关注UI的展示以及前端的页面逻辑


HTTPS和HTTP的区别?

https协议需要ca证书

http的信息是明文传输,https则是具有安全性的ssl加密

http是直接与TCP进行数据传输,而https是经过一层SSL,用额端口不一样,http是80,https是443

http的连接很简单,是无状态的,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全





    

接口测试主要关注点

响应结构

数据来源

数据格式

数据正确性

业务逻辑


用例设计---参数要考虑的

1.请求参数必选或选填 (例如:参数缺失服务端是否正常解析)

2.输入合法、非法参数 (例如:服务器只接收int类型,传递了String类型)

3.请求参数边界值 (例如:存储长度10位,传递大于10位,接口是否处理)

4.请求参数逻辑分支(例如:type=1:查询北京 type=2:查询天津)

5.与服务器是否存在附加协议(例如:交互过程中服务端需要验证head中的数据:或者是否有加密协议)

用例设计---结果要验证的

异常请求处理、请求头协议、响应结构、所有value值的正确性、有效性

数据库交互是否生效、列表排序、分页属性 存在业务关联的是否生效



http接口和webservice接口的区别?

webservice不用担心大小区别

不要担心中文urlencode问题

接口中实现的方法和要求参数一目了然

代码中不用多次声明认证(账号、密码)参数

传递参数可以数据、对象等

你可能感兴趣的:(接口测试面试题)