美文网首页软件测试Python接口测试Python教程专栏
面试前·douyin·第一章(仅供参考)

面试前·douyin·第一章(仅供参考)

作者: wenshuang_he | 来源:发表于2019-12-01 18:38 被阅读0次

    第一章、测试思路开拓

    1.app端测试用例的设计+探索性测试

    • 微信发红包、登录界面
    app端为C/S架构

    C/S架构无法保证每位用户的客户端完全一致(新老版本),只要服务端做修改,就要进行(新老)客户端的回归测试。

    专项测试
    • 安装卸载:安装过程中断电、断网、出现低电量弹框、储存空间不足;点击取消->取消安装->可再次重新安装、kill进程、点击home键再进入app、安装后能正常启动;卸载过程中断电、断网、点击取消、kill进程、点击home键,卸载完后没有残余文件

    • 在线升级:跨单个版本升级、跨多个版本升级、强制升级、正常升级、高版本回退到低版本。升级中逻辑与安装一致;升级完成后可以正常启动app,且低版本数据保留。

    • 弱电弱网:移动设备低电量模式下app运行情况。不同网络下:wifi、2G、3G、4G、5G网络下app运行情况;切换网络时:wifi->4g、4g->wifi app运行情况。弱网下的界面展示样式、刷新和多次点击是否触发二次提交。

    • 中断测试:app运行中kill进程再进入app、home键返回菜单再进入app。app运行中打开蓝牙、闹钟、来电、来短信、打电话、发短信、充电、关机。

    • 针对性测试:手势、手机横竖屏、ios13的dark mode、多点触控、分屏、勿扰模式、权限、通知栏

    一般测试点
    1. 功能:
    • 1.先分析场景->针对不同的属性有不同的场景。数量上:1V1,1V多;时间上:某个时间节点之前/之后;不同权限:拉黑关系/好友关系;特殊场景:节日/活动等

    • 2.提炼功能点->拆解实现步骤,转换为可以进行测试的测试点

    • 3.用场景法设计正常流/异常流->结合每一个测试点的上下游场景,根据“数据从哪来,到哪去”来设计。结合中断、弱网场景进行测试

    • 4.设计单个测试点的测试用例,根据等价类和边界值方法。

      • 思考方向:1->4 设计方向:4->1
    1. 性能:页面响应速度、流量、电量、CPU、GPU、Memory、安装包大小、接口压测

    2. 兼容性:
      ios:系统8-13
      Android:系统4-9、不同的厂商机型
      ipad、过大/过小的屏幕分辨率,异形屏

    3. 易用:遵守行业规定,产品符合正常操作习惯

    4. 安全/合规:个人信息在请求和响应中是否加密传输,涉及安全项的接口使用https协议、考虑xss跨站脚本攻击(利用重定向)、考虑sql注入攻击(利用sql语句对数据库的表进行操作)、产品不触犯国际/国家/名族条款要求、对应权限的人只能看到对应权限的菜单,不能有越权操作、有拉黑/好友关系的需要验证不同场景下的界面交互

    探索性测试:强调测试人员的主观能动性,抛弃繁杂的测试计划和测试用例设计过程,强调在碰到问题时及时改变测试策略。

    web端为B/S架构

    B/S架构只需要更新服务端,客户端就会更新。而且可以保证每位用户的客户端完全一致。

    1. 性能:关注聚合报告(请求数、并发数、吞吐量、最大/最小响应时间、中位数、失败率、QPS、TPS)
      • QPS:“每秒查询率”,是一台服务器每秒能够响应的查询次数,衡量一个特定的查询服务器(比如读写分离架构中读的服务器)在规定时间内处理流量的多少。
      • TPS:“每秒事务数”,一个事务指的从发送请求到接收到响应的过程。客户机在发送请求时开始计时,接受到响应后结束计时,计算使用的时间和完成的事务个数。

    2.兼容性:不同浏览器、相同浏览器的不同版本

    其他测试点:多次点击、快速滑动切换、对应功能的权限问题、对应功能父级的权限问题

    2.逻辑题+发散性思维:

    培养逻辑思维,可以作为一件可持续推进自身完善的任务。在理解需求阶段、用例设计阶段、测试策略设计阶段会节省大量时间。
    
    • 建议:发散性思维需要从多个方面去考虑,不同纬度去发现尽量多的可能性,建议扩展自己的业务知识、行业知识。逻辑思维能让你尽快的去拆解一个需求,变为多条可实施的执行项。

    3.bug定位:

    出现bug先分析在什么场景下触发的,尽可能剔除多的【干扰项】,最后再判断是前端还是后端出现的问题。 
    
    • 剔除干扰项:确认是偶发还是必现,偶发->查日志,必现->拆分为多个步骤,确定在哪一步触发的bug,拆分场景->确定在哪些场景会触发、在哪些场景不会触发。

    • 判断前后端:网上有。抓包看请求,确认前后端。请求有问题,前端;请求没问题,响应码有问题,后端;请求没问题,响应没问题,前端问题。

    4.工具的使用:

    • 抓包工具:charles/fiddler

    • 接口测试工具:postman/jmeter

    • 连接数据库:navicat/sqlyog

    • 连接linux:xshell

    • 代码开发者工具:pycharm/git

    • 自动化框架:Seleinum、Pytest、allure、xlrd、Request、Assert

    第二章、知识点回顾

    • 常用的测试用例设计方法

    • https和http的区别

    • 常见的请求方法,和对应的功能?get和post的区别?

    • 协议的组成部分?

    • 常见的响应状态码

    • adb常用命令

    • 测试流程

    • linux常用命令?怎么查看日志

    • 数据库常用sql语句?增删改查表链接

    • 代码->题目:打开浏览器,打开网页,判断存在字段「百度」就打开新窗口,不存在就关闭浏览器

    • jemeter怎么做接口自动化?怎么实现参数化

    • python代码做接口自动化?怎么实现参数化

    • 代码:UI自动化,代码重构和优化

    • jmeter:使用脚手架

    三、软实力

    1. 抗压能力

    2. 团队合作意识和向上级反馈的意识

    3. 测试过程中遇到一个bug,开发不认为是bug,怎么解决?

      • 从用户的角度去分析问题的严重性,引导开发站在用户的角度去思考。
      • 给开发表述清楚问题出现的场景,可以举例用之前出现过的bug说明。
      • 找产品确认需求点,再决定bug修补修复。
    4. 上线前出现bug,开发来不及修复。怎么办?

      • 测试人员分析问题的严重性,和产品沟通
      • bug改动大、影响广。可以请教其他同事,召开会议来讨论方案
      • 第三方引入的问题。找到对应的负责人员,尽量推动问题的修复

      bug修不修,测试要有自己的原则,同时要权衡利弊。不能说开发推不动就不修复,由着bug上线;也不能揪着一个小bug不放,影响上线时间。

    相关文章

      网友评论

        本文标题:面试前·douyin·第一章(仅供参考)

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