一、软件测试的基础概念
1.1 需求
在企业中,需求 主要分为 用户需求 和 软件需求~
用户需求:
可以简单理解为甲方提出的需求,如果没有甲方,那么就是终端用户使用产品时必须要完成的任务;用户需求 一般是比较简略的,没有一定限制的(五花八门)~
举个例子:假如现在有一个声控灯的话,那么就可以有多个用户需求:声控灯是熊猫形状的、声控灯是黄金制作的、声控灯的声控范围就是在楼梯这一段距离......
由此可见,用户需求是五花八门的,不可以做为实现参考的依据(技术上、投入成本、收益......),需要进行用户需求的提取和分析才可以~
软件需求:
也叫做功能需求,该需求会详细描述 开发人员必须实现的软件功能~
软件需求 是测试人员进行测试工作的依据~
举个例子,解释用户需求和软件需求的不同点:
npy提出了一个需求:就想要喝奶茶(这个是用户需求)~
于是自己就可以取跑去买了,但是需要去和npy去反复的确认:是哪个门店的?是哪款奶茶啊?是热的还是冰的啊?要不要加一些料啊?(这个就是软件需求)~
1.2 测试用例
测试用例 是测试人员执行测试的一组依据,测试人员在执行测试之前 需要编写测试用例,测试用例的好坏 与产品测试质量 具有很大的关联关系~
测试用例 要尽可能的广~
之后,就可以根据测试用例,一个一个的进行测试了~
如果没有测试用例,那么 测试的时候仅仅只能靠着头脑去测、去记,到最后 到底测试过哪些东西,自己也会搞混了~
所以说,测试用例的存在,可以引导进行有条不紊的测试,提高测试的覆盖率,防止出现 "漏测" 的风险~
当然,虽然说 在测试中有一句话叫做 "不可能做到完全的测试",但是 测试人员要尽可能的去避免 "漏测",保证线上不会出现明显的问题~
测试用例的出现主要解决了两个问题:测什么、怎么测~
测试用例 是为了实施测试 而向 被测试的系统 提供的一组集合,这组集合包括:测试环境、操作步骤、测试数据、预期结果 等要素~
比如说,上面的第一个测试用例,就可以这样写:
可是,如果是针对某一个功能,需要去设计几十个甚至上百个测试用例,岂不是非常的麻烦~
实际上,现在的互联网企业,主要使用的是 "思维导图" 的方式去编写测试用例,如: