帮助

日常产品测试用例

2023-04-18 10:05 技术文档

一:测试流程

  • 整体流程图:

需求提取 -> 需求分析 -> 需求评审 -> 更新后的测试需求跟踪xmind

  • 分析流程:

1. 需求提取:

  • 分析依据(包括:需求矩阵、产品交互图、需求说明书)
  • 获取需求的纬度
  • 客户价值
  • 可以为客户带来哪些价值?
  • 可以解决哪些问题?
  • 根据以上问题定位功能是否合理
  •  UI功能 - 展示功能
  • 模块关联-历史模块
  • 新功能模块关联
  • 考虑是否关联?耦合部分是否需要支持?
  • 客户使用场景-部署方式
  • 网络特性
  • 客户使用服务器常见外设
  • 性能参数-性能要求
  • 网卡最低速率
  • 硬件支持
  • 输出(提取最原始的测试需求)

2. 需求分析:

  • 分析依据(五维分析)
  • 用户场景
  1. 功能是否和场景强关联
  2. 网络拓扑能否满足客户需求
  3. 和竞争对手比较差异
  4. 功能是否能满足客户实际应用场景
  5. 是否考虑了用户的实际操作
  • 明确性
  1. 范围明确性(参数、类型长度范围)
  2. 清晰性限制等范畴
  3. 无法预知影响的需求提出进行确定,风险
  • 二义性
  1. 概念模糊【大概念、第三方支持、与上个版本相同】
  2. 支持与不支持等范畴
  3. 一个需求描述能出现多种理解
  • 完整性
  1. 需求一致性【用户需求、需求规格、需求矩阵三者是否同意】
  2. 需求完整【隐形需求】
  3. 关联性【与新老功能、与外置软件设备】
  • 可测试性
  1. 实现测试需要的工具、方法【调试、接口命令】
  2. 定位方式【日志等形式观察】
  3. 复杂环境、容量边界、操作时过程不可见
  • 输出
  1. 测试需求跟踪
  2. 缺陷预防bug
  3. 工具需求
  4. 整理出明确的需求点
  5. 测试地图
  • 分析思路误区:需求和实现的区别【现有需求才有代码实现,不能把代码实现当作需求】
  • 需求分析的意义
  1. 明确产品给客户带来的价值
  2. 明确产品支持和不支持的功能
  3. 明确产品各个功能的约束性
  4. 知道开发实现功能
  5. 知道测试分析和产出测试

二:测试过程中遇到不能复现的bug的时候你怎么办?

    遇到问题就要提,在提交的Bug描述中需要加上一句话,那就是复现概率,尝试10次,出现1次或者尝试10次,出现5次,开发会根据bug的复现概率,调整改bug的优先级尽量回想发生问题时的复现步骤,不要漏掉任何一个细节,按照步骤的组合尝试复现保留发生bug时的log,附加到提交的bug中,希望可以通过log中找到一些相关的,或使用录屏工具将操作步骤录下来与开发人员配合,让开发同学对相应地方的代码进行检查,看一下是否可以通过代码层面检查出问题
在接下来的测试中,时刻保持关注,每次执行同样或者相近的步骤的时候,看下是否能够复现之前的bug通过上述的办法,仍然无法复现,根据bug的优先级,在上线之前对该bug进行处理,严重级别的bug,要召集项目组的成员,集合大家的力量尽可能的复现bug,不严重的bug,也不要关掉,上线后及时的关注用户的使用反馈,如果持续3或者4个版本没有出现,那么可以将bug暂时关掉了,同时关掉的时候要进行评论说明并不是因为修复,而是经过x个版本后不复现了。

三:测试过程中遇到 开发不认为的bug的bug你怎么办?

  1.首先明确开发说不是bug的理由

  2.如果是需求变更,找产品经理确认是否是需求变更

  3.如果开发说测试环境问题,让他说明清楚测试环境问题是什么,按照他说的验证一遍,如果确实如他所说,关闭bug,但是不是他说的那样,继续激活bug给开发解决,确保产品质量。 

  4.如果开发说用户不存在这种使用场景,但是我们不认可他说的,把这个bug知会到测试经理,让测试经理去判定。

四:经典用例设计

  一:.微信发红包的测试点 

  1. 群发红包的个数,以及数字

  2. 红包的封面背景

  3. 红包的最大金额以及最小金额

  4. 红包发出的时间 在没有接收时 多长时间会自动退回

  5. 群发红包每个人指定金额

  6. 群发红包时 输入的金额是否合格

  7. 群发红包时 使用密码支付

  8. 群发红包时使用指纹支付

  9. 发红包时 写入祝福语时可不可以用表情包

  10. 安卓和苹果是否兼容

  11. 网络速度

  12. 外部来信息是否能发红包

  二:测试纸杯的用例点

    测试一个带广告图案的花纸杯  
    二相关背景:  
    1.杯子特性:  
    (1)杯子的容量:能装多少升水,空杯,半杯,满杯  
    (2)杯子的型状:圆型,上面口大,下面小。  
    (3)杯子的材料:纸杯  
    (4)杯子的抗摔能力:风吹是否会倒,摔一次是否会摔坏,摔多次是否会摔坏 (5)杯子的耐温性:装冷水,冰水,热水 

    2.广告图案:  
    (1)广告内容与图案碰水是否会掉色  
    (2)广告内容与图案是否正当  
    (3)广告内容与图案是否轻易剥落  
    三影响范围:  
    1.可用性:  
    (1)装进液体多久后会漏水  
    (2)装进热水多久后可以变温,装进冰水多久后可以融化  
    2.安全性:  
    (1)装进不同液体,是否会有化学反应。比如:可乐,咖啡等饮料  
    (2)装进热水杯子是不是会变型和异味

    3.性能:  
    (1)不同人群是否能适合杯子的型状,包括握杯的感觉和喝水的感觉  
    (2)不同人群是否能接受杯子的广告内容与图案  

  三:购物车测试用例点

    1.界面测试

           界面布局、排版是否合理;文字是否显示清晰;不同卖家的商品是否区分明显。

    2.功能测试

            未登录时:

    •     将商品加入购物车,页面跳转到登录页面,登录成功后购物车数量增加;
    •     .点击购物车菜单,页面跳转到登录页面。

         登录后:

    •     所有功能是否能跳转;
    •     商品是否可以加入购物车;
    •     .购物车商品总数是否有限制;
    •     .商品总数是否正确;
    •     全选功能是否好用;
    •     .删除功能是否好用;
    •     价格总计是否正确;
    •     商品文字太长时是否显示完整;
    •     店铺名字太长时是否显示完整;
    •     购物车中下架的商品是否有特殊标识;
    •          购物车中下架的商品是否能进行购买;
    •     新加入购物车商品排序;
    •     商品删除后商品总数是否减少;
    •     购物车结算功能是否好用。

    3.兼容性测试

            不同浏览器测试。

    4.易用性测试

            删除功能是否有提示;是否有回到顶部的功能;商品过多时结算按钮是否可以浮动显示。

    5.性能测试

           压力测试;并发测试。

  四:登录的测试点   

    功能测试(Function test)

      1.    输入框空值测试:保持输入框为空,点击登录。(非空检查)

      2.    空格测试:

          (1)用户名和密码前后有空格的处理

          (2)是否过滤掉输入字符前后和中间输入的空格

      3.    无效数据测试:

          (1)输入正确的账号,错误的密码

          (2)输入不存在的账号,注册过的密码

          (3)输入注册过的账号与密码不匹配

      4.    有效性测试:输入正确注册的账号、密码

      5.    密码输入框:

          (1)不能明文显示

          (2)是否区分大小写

          (3)输入框是否可复制粘贴

          (4)修改密码后再次登陆验证老密码和新密码是否能登陆成功

      6.    输入框长度限制:边界值测试

      7.    溢出测试:输入很长长度的字符看页面是否会蹦

      8.    登录成功后能否能否跳转到正确的页面

      9.    记住用户名的功能

      10. 登陆失败后,不能记录密码的功能

      11. 密码是否加密显示

      12. 登录页面中的注册、忘记密码,登出用另一帐号登陆等链接是否正确

      13. 一台设备登陆多个账号

      14. 密码输入错误的登陆次数限制

      15. 成功登陆后,退出再次登陆是否需要重新登陆

      16. 登陆按钮禁止多次点击

      17. 手机设置不同的语言看界面是否显示正常

    安全性测试:

      1.    登录成功后生成的Cookie,是否是httponly (否则容易被脚本盗取)

      2.    cookie 缓存问题,sql语句注入

      3.    设备的兼容性:不同机型(Android、iOS)、不同型号(屏幕大小)的界面显示问题,(华为的虚拟键盘)

      4.    用户名和密码是否通过加密的方式,发送给Web服务器

      5.    用户名和密码的验证,应该是用服务器端验证, 而不能单单是在客户端用javascript验证

      6.    用户名和密码的输入框,应该屏蔽SQL注入攻击

      7.    用户名和密码的的输入框,应该禁止输入脚本 (防止XSS攻击)

      8.    错误登陆的次数限制(防止暴力破解)

    性能测试:

      1.    打开登录页面时间

      2.    登录进入页面时间

      3.    支持多少人同时在线

      4.    输入正确的用户名和密码后,登录成功后能否跳转到新的页面

    可用性测试:

      1.    是否可以全用键盘操作,是否有快捷键

      2.    输入用户名,密码后按回车,是否可以登陆

    兼容性测试(Compatibility Test):

      1.    不同的分辨率

    本地化测试(Localization test)

      1.    不同语言环境下,页面的显示是否正确。

五:token  session cookie 三者之间的区别?

  1.cookie 数据存放在客户的浏览器上,session数据存放在服务器上

  2. cookie  不是很安全

  3.token 的安全性比session好  可以防止监听或者攻击

六:部门负责人的简称?

  1.开发总监:CDO

  2.评估总监:CVO

七:性能测试的指标有哪些?

  RT:响应时间
TPS:每秒完成事务数
CPU性能指标:利用率、负载
Mem:内存性能指标,可用物理内存、虚拟内存使用率
Disk:磁盘性能指标,Disk Time、IO等待
NetWork:网络指标,带宽使用率、任务队列长度
TCP连接数,可以用netstat命令统计得到
中间件建立的线程池,监控线程状态
JVM性能指标,GC情况、Heap使用情况
CPU负载队列长度



相关推荐

QQ在线咨询