软件测试 初识

软件测试

软件测试的定义

软件测试就是验证产品特性是否满足用户需求;

上面是软件测试的一个较为学术的定义,简单来说,软件测试就是对软件进行测试,发现软件的缺陷,也就是找bug。简单举一个网上购物的例子,在购物之前,我们需要测试一件衣服的外观、颜色、样式,需要测试衣服的价格,测试商品详情展示的衣服材质,而在收到商品之后,我们同样需要对衣服真实的材质做测试,如果有问题需要对商家的售后做测试,这些也许看起来是在正常不过的事,实际也是我们不断在测试的一个表现;

软件测试的特点

软件测试具有不可穷尽性;
软件测试贯穿于软件的整个生命周期;

软件测试绝不仅仅是在程序开发的某一个阶段需要进行的工作,而是存在于软件开发的整个过程,一直延伸到软件后期的升级、运行、维护等阶段;

与软件开发的区别

首先,软件测试与软件开发最根本的区别就是两者工作任务的关注点不同。对于软件开发人员而言,最主要的就是负责编写业务代码;而对于软件测试人员,则是主要负责测试软件质量。 对于两者工作的难易程度而言,开发工作所涉及的专业度更高,但广度更小;测试工作所涉及的专业度更低,但广度更大。

软件测试的基本概念

需求

在企业中,需求主要分为两类,即软件需求和用户需求:

  • 软件需求

软件需求主要是描述开发人员必须实现的软件功能;

  • 用户需求

用户需求主要就是最终产品的使用者提出的需求;

一般用户需求都较为简略和笼统,由于用户可能会提出各种各样的需求,这些需求不一定都是合理或可执行的,因此用户需求是需要进行分析和提取的,最终转化为软件需求;

软件需求是测试人员进行测试工作的基本依据

测试用例

测试用例是测试人员在执行测试之前需要进行的工作,测试用例的好坏很大程度上影响了产品的质量。

测试用例是为了实施测试而向被测试的系统提供的一组集合;

测试用例主要解决2个问题,即测什么和怎么测;一般包含几个要素:测试环境、操作步骤、测试数据、预期结果;

以某网站的搜索引擎为例,下面就是一个完整的测试用例的编写:

在这里插入图片描述

这样的测试用例编写方式无疑是繁杂的,因此企业更多使用脑图的形式编写测试用例,这里暂不做演示。

测试用例是为了尽可能提供测试的覆盖率,同时避免冗余测试影响测试效率,但不可能做到完全的测试也是不争的事实,我们只能尽可能地去避免漏测,最大程度地保证产品质量。

软件错误(Bug)

简单来说,当与预期结果不符时,就可以认为是一个bug,但软件错误更全面的定义主要有下面两个方面:

当且仅当软件规格说明书存在且正确时,若程序与规格说明书不符时认为是软件错误;
对于规格说明书没有指明的功能,若程序与用户的合理需求不符,认为是软件错误;

优秀的软件测试人员需要具备的素质

主要有综合能力以及专业能力;
综合能力:

  • 良好的沟通能力;
  • 快速学习能力;
  • 文字能力;
  • 开发能力;

专业能力:

  • 优秀的测试用例设计能力;
  • 掌握一定的测试技术(像自动化测试技术);

当然,除了以上这些,对于测试的兴趣,一定的探索性思维,必要的责任感和抗压能力都是必须的~

猜你喜欢

转载自blog.csdn.net/weixin_54175406/article/details/129805964