测试小总结

测试问题

一般分为四类:

  1. 测试生活中的一个物品
  2. 测试一套软件
  3. 编写代码来测试一个函数
  4. 调试解决已知问题

可以从功能、性能、兼容性、界面、易用性、(安全性)几个方面来测试

测试用例:为实施测试而向测试的系统提供的一组集合,包含(标题)、测试环境【测试设备、测试系统】、测试数据、测试步骤、预期结果、重要性

无论哪种问题,都要做好用户误用乱用的准备

测试需要什么?

  • 全局观:了解软件到底是怎么回事,区分测试用例的优先顺序。如测试亚马逊这类的电子商务系统,不仅要确保产品图片显示位置正确,还要确保支付流程、货物发货流程的万无一失
  • 懂整合:了解软件工作原理,以及如何将它们整合成一个大的软件生态系统。如测试谷歌电子表格,不仅要测试文档的打开、存储、编辑,还要将它与Gmail以及各种插件和其他模块整合在一起测试
  • 会组织:有条理的处理问题。如写照相机的测试用例,可以将测试功能分为拍照、照片管理、设置等,在创建测试用例时,这种结构化处理方式有助于考虑更加周全
  • 可操作:制定的测试计划是否合理。如有用户报告软件在打开某张图片时崩溃,却要求重装软件,就不太实际
测试生活中物品

如回形针、水杯、笔

步骤

  1. 使用者是什么人?作用?
  2. 列出用例,如回形针可能是将纸张固定在一起且不破坏纸张
  3. 使用限制?如回形针最多夹30张纸不会造成永久性损害、高温低温影响
  4. 压力与实效情况下的状态?没有产品是万无一失的,测试中需要分析失效情况,了解产品在什么情况下失效是可以接受的(必要的),怎样算是失效
  5. 如何进行测试?定义正常的使用情况,除了手动测试还可以找台机器自动执行某些功能的测试
测试一套软件

相较于测试生活物品,更强调执行测试的细节
主要有两个方面:

手动测试和自动化测试
对于自动化测试,某些功能对计算机而言过于定性,计算机难以有效检查,并且计算机只能机械地识别被明确告知过的情况;手动检测能通过观察发现新的问题。所以说测试过程中人工和计算机两者缺一不可


黑盒测试和白盒测试
黑盒测试中,把软件看做黑盒子,看不到内部结构,关心软件的表象、只测试其功能。主要关注细节及过程做细致的检查:

  1. 所有执行路径的检查
  2. 逻辑语句的检查
  3. 循环边界的检查
  4. 数据的有效性

白盒测试中,需了解程序的内部机制,可以分别对每一个函数单独进行测试。功能测试和性能测试:

  1. 是否符合文档的要求
  2. 是否有遗漏的功能
  3. 能否得到正确的结果

步骤

  1. 做黑盒测试还是白盒测试?
  2. 使用者?作用?
  3. 列出用例
  4. 使用限制?
  5. 压力条件、失效条件是什么样的?
  6. 列出测试用例,如何测试?
测试一个函数

步骤

  1. 定义测试用例(正常情况、极端情况、奇怪的输入等)
  2. 定义预期结果
  3. 编写测试代码
调试和故障排除

假设你是谷歌Chrome浏览器团队的一员,收到一份bug报告:Chrome启动时会崩溃。怎么处理?
此时的目标是搞清楚究竟出了什么问题,以便开发人员修复缺陷
步骤

  1. 理清状况、了解情况
    首先,提问题,尽量了解当时的情况:
    用户碰到这个问题有多久了?
    该浏览器的版本号?在什么操作系统下运行?
    该问题经常发生吗?【出问题的频率有多高?什么时候会发生?】
    是否提交了错误报告?
  2. 分解问题
    了解问题发生时的具体状况后,将问题分解为可测模块。可以设想出以下操作步骤:
    1.转到Windows的“开始”菜单
    2.点击Chrome图标
    3.浏览器启动
    4.浏览器载入参数设置
    5.浏览器发送HTTP请求载入首页
    6.浏览器收到HTTP回应
    7.浏览器解析网页
    8.浏览器显示网页内容
    在上述过程中的某一步,有地方出错使浏览器崩溃。应逐一排查每个步骤,诊断定位问题位置
  3. 创建特定、可控的测试
    以上各个测试模块都应该有实际的指令动作,即自己可以做的操作步骤(在自己的机器上予以重现)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值