接口测试面试题目

1、做接口测试当请求参数多时,tps下降明显,此接口根据参数从redis中湖区数据,每个参数与redis交互一次,当一组参数是tps5133,五组参数时tps1169,多次交互影响了处理性能,如何改进?

tps就是每秒事务数,transaction per second。

吞吐量下降是可能因为频繁访问redis,而频繁访问redis的原因是参数过多,解决的思路很容易想到: 减少参数

我们可以把多组参数变成json字符串之类的一个参数,从而达到信息量不减少而参数个数变少的效果。

2、接口的加密测试中对称加密和非对称加密有什么区别吗?如何展开测试?

对称加密: 信息交换的双方使用同一个密钥加密解密,就像是用同一把钥匙开一把锁

非对称加密

公开密钥加密(英语:Public-key cryptography),也称为非对称加密(英语:asymmetric cryptography),是密码学的一种算法,它需要两个密钥,一个是公开密钥,另一个是私有密钥;一个用作加密的时候,另一个则用作解密。使用其中 一个密钥把明文加密后所得的密文,只能用相对应的另一个密钥才能解密得到原本的明文;甚至连最初用来加密的密钥也不能用作解密。由于加密和解密需要两个不 同的密钥,故被称为非对称加密;不同于加密和解密都使用同一个密钥的对称加密。虽然两个密钥在数学上相关,但如果知道了其中一个,并不能凭此计算出另外一 个;因此其中一个可以公开,称为公钥,任意向外发布;不公开的密钥为私钥,必须由用户自行严格秘密保管,绝不通过任何途径向任何人提供,也不会透露给要通 信的另一方,即使他被信任。

基于公开密钥加密的特性,它还提供数字签名的功能,使电子文件可以得到如同在纸本文件上亲笔签署的效果

3、阐述接口测试和UI测试在测试活动中是如何协同测试的?

UI与接口测试的协同可以从下面的方向考虑

  • UI的操作实际上就是用另一种方式调用接口,那么接口有多少种参数组合就要求UI用例要构造多少种操作进行调用
  • UI操作所需要的数据可以用接口来生成
  • 接口测试可以保证数据和逻辑的准确性,UI测试需要考虑交互和界面展示的逻辑正确性
  • UI测试需要重视接口调用不成功或者接口异常情况下UI的呈现方式和用户体验
  • UI中可能会有一些状态的缓存信息(这样就不需要每次频繁调用接口去获取了),比如鉴权信息等,需要重点关注这些缓存的更新策略

4、在手工接口测试或者自动化接口测试的过程中,上下游接口有数据依赖如何处理?

上个接口返回的结果可以存在全局变量,或者写到配置文件中。下个接口可以从全局变量中读取,或者从配置文件中读取。

5、依赖第三方数据的接口如何测试?

依赖第三方就mock掉,可以自己写mock server

6、http接口测试和web service接口测试区别是什么?

省略

7、接口测试中依赖登录状态的接口如何测试?

依赖登录态,那么每次测试该接口之前都需要调用登录的接口

如果是jwt之类的token based auth的话,每次在调用接口时提供token就可以了

8、设计接口测试用例:设计的是电商系统,其中包括很多参数,如商品,商家,店铺等等,针对这些数据的修改,会设计到很多参数,如商品名称,商品尺寸,商品颜色等等。现在设计实现“修改”接口时,如何确定要传哪些参数呢?是只需要传入我要修改的参数还是全部参数?

修改的接口,也就是update的接口一般只需要传:被更新了的字段 以及 被更新实体的 主键 比如id。

这是开发常识,如果大家研究过jsonapi规格的话,可以直接套用jsonapi的设计进行阐述。

9、目前接口文档是有word格式管理,因迭代快,产生很多文档,分不清那些事不用的接口,那些是正在用的接口,那些是更新后的接口,文档杂乱,不方便管理,另外文档是word格式,不方便查询,如何管理

swagger文档可以解决这个问题。()

swagger是我用过最好用的,只是编写相关的json比较麻烦,又不想集成在代码中。不过可以在网站(www.sosoapi.com)上在线表单方式编写swagger-ui对应的json哈,编辑简单而且可以在线预览和导入导出,挺方便的

猜你喜欢

转载自www.cnblogs.com/xiaohuhu/p/9553143.html