软件测试

定义:软件的预期结果和实际结果做对比的过程

分类

  • 方法
    黑盒测试:对外部暴露出来的功能进行测试
    白盒测试:是通过程序的源代码进行测试而不使用用户界面
    灰盒测试:介于黑盒和白盒之间,同时看暴露出来的功能和内部的结构

  • 阶段
    单元测试:测试软件的代码中的函数、方法、类等等代码单元
    一般都是开发自己做
    集成测试:测试的就是两个模块之间是否能够正常对接
    测试的对象就是接口
    系统测试:对整个软件的整体进行测试
    功能、性能、安全、UI、等等
    验收测试
    α测试:内测
    β测试:公测

  • 方向
    功能测试:对功能做测试
    性能测试
    压力测试:这个软件最多可以容纳多少人使用
    通过模拟用户的数量来发现软件的瓶颈
    负载测试:找到系统在极限的情况下,能够运行的最长时间
    并发测试:内存溢出、系统崩溃、数据库宕机等等
    安全测试:弱口令、渗透测试、流量攻击、跨域攻击、SQL注入
    UI测试:检查软件的界面好不好看
    风格是否统一
    有没有错别字
    按钮是否符合UI设计的思路
    兼容性测试:就是测试同一个软件在不同的平台上是否运行正常
    web
    app
    易用性测试:好不好用,能少就别多,尽量不要有学习成本
    稳定性测试:软件长时间运行使用会不会有问题
    前端:2~5小时
    后端:7*24小时
    APP的专项测试
    弱网测试:模拟在不同的网络条件下APP是否能够正常的使用
    2G 3G 4G 5G WiFi
    通过fiddle做弱网测试
    权限测试
    场景交互测试:电话来了、短信来了、不同软件之间的切换、前后台的切换、放音乐、分屏
    资源争用测试:两个同样类型的APP同时操作或者使用同一个资源
    安装、卸载、更新测试
    消息推送测试:APP退出后能不能收到消息推送
    断网后再联网能不能收到消息推送
    离线测试:在没有网络的情况下,APP会不会出现一些莫名其妙的错误提示
    在断网的情况下,APP还能使用不

  • 对象
    APP测试
    web测试
    大数据测试
    AI测试
    游戏测试
    物联网测试
    车联网测试
    小程序测试
    嵌入式测试

  • 状态
    动态测试
    静态测试

  • 其他
    回归测试:检查之前发现的bug开发有没有正确的修改成功
    冒烟测试:测试前的测试,检查软件是否具备可测试性
    灰度测试:在正式发布之前,选择一些特定的人群试用
    打桩测试:是一种测试手段
    埋点测试:通过开发协助,让我们在每次操作软件的时候,可以直接看到操作的过程和结果

测试流程

需求分析阶段
当产品经理提出需求后,就开始这个阶段

  • 需求是什么:
    产品原型
    需求文档
    口述
  • 需求分析:
    梳理出整个项目的业务逻辑、流程
    找出每一个最小的功能点
    确定每个功能点的相关规则
  • 编写需求分析说明书

测试设计阶段

  • 测试计划
    测试的内容
    什么时候去做什么测试
    为什么要去做这个测试
    安排谁负责去做这个测试内容
    测试工作如何去做
    各种资料或者测试环境的管理
  • 测试策略
    规定测试的内容、测试的顺序
    哪些测试内容需要做,哪些不需要做
    哪些先做,哪些后做,以及原因
    风险分析:找出可能会遇到的风险,并且制定解决方案 需求风险、时间风险、人员风险、技术风险
  • 测试方案
    关于每一个测试内容应该如何开展单独地写成文档
  • 测试用例
    用例编号:唯一的
    用例标题:言简意赅,用最少的字描述清楚这个用例是做什么的
    前置条件:在执行这个用例前,软件需要满足什么条件
    优先级:和时间有关,越紧急的优先级越高
    重要级:和功能是否核心业务有关,越核心的功能重要级越高
    测试数据:通过等价类和边界值所设计的数据
    测试步骤
    预期结果
    实际结果
    测试方法:
    边界值
    等价类:有效等价类、无效等价类
    场景法:站在用户的角度去分析用户对于某个功能可能会有哪些操作
    猜错法
    路径覆盖法
    因果图
    判定表

测试执行阶段

  • 执行测试用例

  • 记录管理跟踪bug
    bug的管理:
    bug六要素:编号、bug标题、重要级、优先级、复现步骤、附件(截图、视频、日志)
    bug的等级:
    致命的:和钱有关的任何bug都是致命的
    导致软件崩溃,完全不能使用的问题
    严重的:导致了软件的核心业务流程无法进行的
    重要级高的用例的正向场景导致的问题
    一般的:逆向场景出问题的bug
    轻微的:UI上的,易用性上的bug
    bug的生命周期
    在这里插入图片描述

  • 版本管理
    版本迭代:
    测试环境需要更新,重新运行
    测试迭代:
    全量测试
    增量测试:只做回归测试,新增的功能的测试,已知的有修改的功能的测试
    引入自动化测试,通过自动化测试的手段,去保证那些没有测试的地方出现问题

测试总结阶段
测试报告:
工作总结
bug的统计和分析
质量评估:说明当前的软件的质量的情况,比如功能的完成情况,比如bug的修复情况;所有的需求以及开发完成,并且全部测试通过,已经发现的一二三级的bug全部关闭

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值