美文网首页
4月份面试题汇集

4月份面试题汇集

作者: 猫大白Mk | 来源:发表于2021-04-10 18:47 被阅读0次

    自我介绍

    项目介绍

    常见测试基础题

    • 测试流程是什么?
      (1)需求评审阶段:参与需求评审,了解需求
      (2)测试计划制定:制定测试计划,安排测试时间
      (3)用例编写阶段:编写测试用例、冒烟用例
      (4)用例评审阶段:进行测试用例及冒烟用例评审并优化用例
      (5)用例执行:项目提测,执行测试用例并提交bug到bug管理平台并进行bug跟踪
      (6)上线:项目上线并线上验证
      (7)线上问题复盘(有的公司没有,可忽略)
      
    • 进入一个项目怎么快速熟悉业务,有什么方法?
      仁者见仁智者见智的问题;
      可以使用xmind梳理模块、功能点、细节点等等;
      
    • 测试认为是bug,开发认为不是怎么办?
      (1)首页把bug记录下来
      (2)根据需求文档、设计文档进行分析
      (3)找产品确定
      (4)确定是问题,则修改;否则关闭bug即可
      
    • 有哪些测试用例方法?常用的是哪些?
      等价类、边界值、错误推测法、因果图法、判定表发、正交实验法、功能图法、场景法等等
      常用的:等价类、边界值、错误推测、场景法
      根据项目的本身功能可以结合因果图、正交等
      
    • http和https的区别
      (1)http不安全,https安全;因为http是明文传输,https是具有安全性的ssl/tls加密传输协议
      (2)常见的是http,因为https需要CA证书,一般CA证书都是收费的,免费的少
      (3)http的端口是80,https的端口是443
      
    • 常见状态码及含义
      200  成功
      300  重定向
      400
      
    • http的请求头和响应头都包含什么?有什么意义?
    • cookie和session的区别
      (1)cookie数据存放在客户的浏览器上,session是放在服务器上的
      (2)cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗考虑到安全应当使用session
      (3)设置cookie时间可以使cookie过期。但是使用session-destory()我们将会销毁会话
      (4)cookie最大是4k,一般浏览器最多20个cookie;session则没有限制
      
    • post和get的区别
      (1)post比get安全;因为post的请求参数在请求体中,get的请求参数在url中
      (2)get有长度限制,post没有
      (3)get在浏览器退回是无害的,post需要再次提交请求
      (4)get请求只能进行URL编码,post支持多种编码形式
      (5)get只产生一个数据包,post产生两个数据包
      
    • App端和web端测试异同点
      (1)app端是c/s架构,web端是b/s架构;
      (2)web端只需要更新服务器,客户端就自动更新了;app端需要同时更新服务器和客户端;
      (3)性能:web端只要会关注响应时间;app端还需要关心流量、电量、cpu、GPU、内存等
      (4)兼容性:web基于浏览器,倾向于浏览器;app则要看分辨率、屏幕尺寸、手机系统等等
      (5)app专项测试:安装、卸载测试;安装时弱网、断网等;兼容性测试;不同网络测试;在线升级测试;  中断测试;耗电量测试;流量测试等
      
    • Android和ios测试的区别
      (1)Android操作系统较多,有20多种;ios相对单一
      (2)Android的下载,安装渠道多;ios主要是app store、iTunes、testflag
      (3)Android的back键是否被重写,功能是否正常;应用数据从内存移动到sd卡后,应用是否能正常使用;  ios只有home键
      (4)Android接收的push提醒是否能正常跳转;ios的push提醒只要是红点显示
      
    • 黑盒测试和白盒测试的区别
    • 冷启动和热启动
      冷启动:软件第一次启动时间或杀掉后台进程,再次进入的启动时间
      热启动:软件后台运行时,打开软件所需要的时间
      

    常见测试管理题

    • 怎么规划测试周期?
    • 如何合理安排测试?
    • 测试风险评估
    • CI、CD和Deveops的区别

    逻辑题

    • 一个长度粗细不一的绳子,全部烧完需要60分钟;怎么取到30分钟、15分钟时间?
    • 两个沙漏,一个漏完需要9分钟,另一个漏完需要7分钟;怎么获得一个4分钟时间?
    • 有63瓶毒药,分给不同的小鼠吃,最多需要几只小鼠?

    测试工具问题

    (一)数据库常用命令

    • 查询
      select * from 表名 where 条件   # 查询
      select * from 表名 where id like ‘%1%’  # 模糊查询
      select count(distanct id) from 表名 where 条件 # 去重后--总共
      select * from 表名 where 条件 order by id desc  # 根据id倒排序 
      select * from 表名 where id between 1 and 10 # 查询id是1和10之前的
      select * from 表名 limit 0,20  # 查询前20行、分页
      select count(*),id from 表名   # 查询总共有多少
      select * from 表名  where 条件 group by 字段名  having 条件  # 分组
      
    • 更新
      update from 表名 set 字段名 = 新值  where 条件 
      
    • 新增/插入
      insert into 表名(字段名) values (值)
      insert into 表名(字段名) select 值  union select 值  # 插入多行
      
    • 删除
      delete from 表名  where 条件
      

    (二)抓包工具的使用

    • 怎么mock数据?
      (1)加断点
      (2)重写
      
    • 弱网测试怎么做?
      proxy-->throttle settings进行设置2G、3G、多少kb
      
    • 是否抓取过视频?怎么做的
    • 重定向用过吗?

    (三)Postman的使用

    • 一个接口要求带cookie,需要怎么做?
      在请求的header中加入cookie
      
    • 如果传参是json格式,调用报错,是为什么?
      (1)json格式不对
      (2)传参有误
      (3)header中未加application/json
      
    • 是否使用过全局变量?
      (1)在test中通过jQuery形式提取json返回
      (2)声明一个全局变量参数
      (3)在authorization中配置全局参数
      
    • 有没有用过jQuery形式提取变量

    (四)Linux命令

    cd  # 切换文件目录
    ls  # 查询当前路径下的文件
    ls -a # 查询当前路径下的文件(包含隐藏文件)
    pwd  # 查询当前路径
    lsof -i:PID # 查询端口被哪个进程占用
    ps -ef  # 查询全部进程
    kill -9 PID  # 杀掉进程
    find | grep ‘查找内容’  文件名  # 查询文件内容
    sed ‘s/yyy/xxx/g’ 文件名  # 把文件中的所有yyy替换为xxx
    cat/tail/less/more  文件名  查询日志
    # 怎么动态获取日志内容
    

    (五)jmeter相关

    • beanshell怎么用?
    • 参数化方式有哪些?
    • 把登录的cookie取出来作为全局变量需要哪些配置元件?
    • 需要使用十万个用户的登录cookie做入参,调用一个接口,要怎么做?
    • 聚合报告怎么分析?
    • KPS的含义?你测试的时候要求大概是多少?

    (六)adb相关

    adb installl   # 安装
    adb uninstall  # 卸载
    adb shell screencap  # 截图
    adb  shell logcat | findstr "cmp= "  # 查询包名和活动页名
    adb devices  # 查询连接设备
    adb connect  # 连接设备
    adb shell monkey -p package -v -s --ignore-crash   # 健壮性测试
    adb start-server    # 启动adb服务 
    adb kill-server    # 停止adb服务
    adb shell am start -w 活动页名   # 冷启动和热启动时间查看
    

    (七)Jenkins相关

    • Jenkins除了立即启动还有什么其他的启动方式?
      (1)定时触发
      (2)SCM轮询

    Python相关

    • python的数据类型有哪些?

    • python中continue、pass、break起什么作用?

    • super是干什么的?

      # 用于继承父类,提高代码复用性,便于维护
      class demo:
         def add(a,b):
            return a+b 
      class demo1(demo):
          def add(m,n):
             super().add(m,n)
      
    • 推导式怎么转化为生成器?

    • yield和return的区别

      yield:不阻断返回
      return:阻断返回
      
    • tuple和list的区别

    • 举几个常用的魔术方法

    • 什么是lambda函数?作用是什么?有什么优缺点?

    • Selenium集群

    • Selenium的三种等待方式

      显式等待、隐式等待、强制等待
      

    相关文章

      网友评论

          本文标题:4月份面试题汇集

          本文链接:https://www.haomeiwen.com/subject/lxbnkltx.html