软件测试概念

什么是软件测试

其实软件测试就是测试软件的功能是否满足用户的需求,是否还存在一些bug。对于这种针对系统功能的测试,就叫做软件测试。

软件测试的目的

就是验证软件产品特性是否满足用户的需求。不仅要看出软件符不符合用户的需求。并且要把不符合的方法也找出来。

简单的练习,找出不同,也就是找出和需求的 bug:
在这里插入图片描述
简单来说就是:软件按照用户提出的需求,而设计了很多的功能。软件测试人员 需要验证 软件功能 的方方面面:

  1. 验证功能是否能正常运行 【但是能跑,不代表就能达到预期的效果】
  2. 验证功能是否满足用户的需求【用户的需求 == 预期的效果】

测试登录

来尝试测试某软件的登录功能,需要测试的功能如下:

  1. 用户名和密码
  2. 扫码登陆
  3. 第三方登录
  4. 人脸
  5. 指令
  6. 声音
  7. 虹膜
  8. 手机验证码

这里我们只关注 用户名和密码 登录的方式,分析一下验证方式:

  1. 用户名/密码不匹配,或者不存在
  2. 向手机发送登录验证码的时候,手机能都接收到信息
  3. 向右滑动【图片验证】
  4. 输入图片上的 字符/数字
  5. 选择包含指定内容的图片
  6. 数值运算【输入加减乘除的结果】
  7. 选择指定的文字
  8. 文字游戏
  9. 成语填空

以登陆方式为 用户名和密码,验证方式为:输入图片中的字符,来设计测试用例:

  1. 把 用户名和密码中的大小写变换 [登录失败]
  2. 空输入 [用户名和密码都没有填写的情况,登录失败]
  3. 用户名/密码 长度不匹配 [登录失败]
  4. 用户名不存在 [登录失败]
  5. 用户名与其密码不匹配 [登录失败]
  6. 用户名与密码之间,有一个是输入错误的 [登录失败]
  7. 用户名和密码 输入正确,并且验证码输入正确 AND 在有效时间范围内,将验证码输入。[登录成功]
  8. 是否允许多地登录 [比如: QQ就不允许,如果你是相同类型的设备,它会把你挤下线]
  9. 网络波动的情况 [登录失败]
  10. 断网/断电,导致的登录失败
  11. 账号冻结 [登录失败]
  12. 账号被注销 [登录失败]
  13. 账号出现违规操作,禁用的账号
  14. 机器人冒充登录
  15. 多次输入错误 [账户被锁定]
  16. 未在指定时间内,输入验证码,验证码是否可以刷新,重新发送
  17. 输入错误的验证码 [登录失败)
  18. 密码的保密性
  19. 忘记密码,能不急找回密码
  20. 对于用户名和密码的长度,是否存在限制

有的人可能会说:我越想越多,难道我要把所有的可能性都尝试一遍? 当然是不行的,穷举所有情况是不可能的!!!。测试工作主要保证:主要功能(用户频繁使用的功能) 和 核心流程 的正确性。也就是说: 测试是有优先级的,先把重要的测试了,其它的,可以往后放一放。就是测试软件的功能是否满足用户的需求。

自动售票机的测试

整个售票流程:

  1. 选择始发站和到达站
  2. 选择车次
  3. 选择座位
  4. 身份核验
  5. 付款
  6. 取票

根据流程设计测试点:

  1. 选择始发站和到达站:
    输入一个不存在的站点,提示显示查无此站
  2. 选择车次:
    该车次的车票已售完,无法买票
    选择车次后取消,无法购买
    是否接受中转站,还是一站到达? [如果接受,有两张票]
  3. 选择座位
    座位分:一等、二等,商务座,站票(可选)
    票售完,是否进入该车次的候补区 [有人可能会退票]
    是否货运托运
  4. 身份核验
    身份信息不存在,核验失败,无法买票
    学生证核验失败,无法购买折扣票
    身份证过期了,校验不成功:反之,且信息真实存在,验证成功
    其他的卡代替身份证核验,核验失败。[你用公交卡和一些杂七杂八的卡,去验证身份肯定是不行的]
  5. 付款
    现金
    二维码(支付宝,微信)
    银行卡
  6. 付款失败情况
    支付宝/微信,余额不足
    付款二维码失效
    假币
    现金残缺[获取参数不全]
    现金不足以购买一张票
    现金找零
    银行卡 挂失/冻结/余额不足/消磁,不能使用
    使用了 售票机 不支持的银行卡
    售票机 断网/断电/故障,出票失败
  7. 取票
    是否支持 线上/线下 取票
    售票机(取票机) 断网/断电/故障,取票失败
    售票机没纸了,无法打印车票 [提示用户: 联系工作人员]
    售票机没墨了,无法打印车票 [提示用户: 联系工作人员]
    取票要不要打印购票信息

衡量软件测试结果的依据 — 需求

需求是满足用户的期望或正式规定的文档(合同、标准、规范)所具有的条件和权限。需求包含用户需求和软件需求。

在具体设计测试用例的时候:

  1. 首先需要搞清楚每一个业务需求对应的多个软件功能需求点。
  2. 然后分析出每个软件功能需求点对应的多个测试需求点。
  3. 最后针对每个测试需求点设计测试用例。

像测试用户登录这样:
在这里插入图片描述
这个图列举的是主要的测试点,还有其它需要测试的对方,如:界面,易用性,可靠性,容错性,可移植性等等。

测试用例

测试用例是为了实施测试而向被测试的系统提供的一套组合,包括测试环境、操作步骤、测试数据、预期结果等要素。测试用例就是说明:测什么,怎么测。常见的测试用例分为:功能角度和非功能性需求维度。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lockey-s

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值