zoukankan      html  css  js  c++  java
  • 接口测试之-题目

    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、在手工接口测试或者自动化接口测试的过程中,上下游接口有数据依赖如何处理?

    上下游接口的数据依赖无非就是准备测试数据。

    假如一个事务需要顺序调用3个接口,A B C, C依赖于AB, 而AB有数据依赖,这时候就需要准备好A和B的数据。

    数据一般有两种方式生成

    • 动态方式:假如B依赖A创造的数据,那么每次执行B之前必须执行A去做数据创建

    • 静态方式:独立统一的测试数据库, ABC需要的数据都可以从库里拿到

    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哈,编辑简单而且可以在线预览和导入导出,挺方便的

    http://www.cnblogs.com/JoiT/p/6378086.html

    http://www.jianshu.com/p/5cfbe62a1569

  • 相关阅读:
    SpringBoot:Web开发
    java @Value注解 和 @Data注解
    携程 Apollo 配置中心传统 .NET 项目集成实践
    Spring Boot 整合 JPA 使用多个数据源
    ibatis 核心原理解析!
    Spring Boot 面试,一个问题就干趴下了!
    在Docker中部署Spring Boot项目
    REDIS缓存穿透,缓存击穿,缓存雪崩原因+解决方案
    超全详解Java开发环境搭建
    SpringBoot入门(一):从HelloWorld开始
  • 原文地址:https://www.cnblogs.com/bell1991/p/7241173.html
Copyright © 2011-2022 走看看