软件测试入门目的及面试题

目录

一、测试目的及前景

1、什么是软件?

2、什么是软件测试的定义?

3、软件测试目的?

二、主流技术

1、就业方向如何选择?

2、功能测试

3、自动化测试

4、接口测试

5、性能测试

三、测试分类

1、按阶段划分

2、按代码可见度划分

四、质量模型

五、测试流程

六、测试用例

1、什么是用例?

2、什么是测试用例?

3、测试用例的作用?

4、用例编写格式?

1. 用例编号:项目_模块_编号,例如:淘宝_购物车_01 :TB_GWC_01

2. 用例标题:预期结果(测试点)

3. 项目/模块:所属项目或模块

4. 优先级:表示用例的重要程度或者影响力p0~p4(p0最高),用户用的频率最高的称为p0

5. 前置条件:要执行此条用例,有哪些前置操作

6.测试数据:操作的数据,没有的话可以为空

7. 测试步骤:描述操作步骤

8. 预期结果:期望达到的结果

5、用例练习

七、规范的测试用例

八、等价类划分及练习QQ

1、等价类划分法

1. 说明 | 分类 | 步骤

2. 案例

3. 适用场景

八、总结


一、测试目的及前景

1、什么是软件?

控制计算机硬件工作的工具。

2、什么是软件测试的定义?

使用技术手段验证软件是否满足使用需求。

3、软件测试目的?

减少软件缺陷(bug),保障软件质量!

二、主流技术

1、就业方向如何选择?

1. 方向(一):功能测试+接口测试

2. 方向(二):功能测试+性能测试

3. 方向(三):功能测试+web自动化

2、功能测试

功能测试:测试注意验收程序的功能是否满足需求

3、自动化测试

自动化测试:使用代码或工具代替手工,对项目进行测试(使用工具是比手工的效果高)

4、接口测试

接口测试:使用代码或工具验证程序中的接口是否访问正常(接口一定是后端开发好的,提供出来,直接进行验证就好了)

5、性能测试

性能测试:模拟多人使用软件,查找服务器缺陷

三、测试分类

1、按阶段划分

①单元测试:针对程序源代码进行测试

②集成测试:针对程序接口进行测试

③系统测试:针对程序功能、非功能进行测试

④验收测试:使用不同用户(内测、公测)进行测试

2、按代码可见度划分

①黑盒测试:不关注源代码,针对程序UI功能进行测试 (UI:User interface 用户接口,UI称为有界面可以看到系统界面)

②灰盒测试:针对程序部分代码进行测试(接口)

③白盒测试:针对程序源代码进行测试

四、质量模型

质量模型:功能、性能、兼容、易容、安全、可靠性、移植性、维护性

面试题:能够说出质量模型中重要的五项:功能、性能、兼容、易容、安全

五、测试流程

如何开展软件的测试工作?面试题:在上家公司测试的流程是啥?

①需求评审 ②编写测试计划 ③用例设计 ④用例执行 ⑤缺陷管理 ⑥测试报告

六、测试用例

1、什么是用例?

用例:用户使用的案例

生活中常见的案例:

①是否能开机:打开手机按下电源键3秒钟,看是否能开机。

②验证内存:打开手机设置查看内存是否为64G。

③验证屏幕:打开手机在白屏背景下检查屏幕是否有黑色点。

④检查运行速度:打开手机下载吃鸡游戏,是否运行流程。(简单的说就是不卡住就行)

2、测试用例的定义?

测试用例的定义两种说法:

①是为测试项目而设计的执行文档。

②是为了特定的目的而设计的一组有测试输入、执行条件、预期结果的案例(文档)

3、测试用例的作用?

作用两点:①防止漏测、②实施测试的标准

4、用例编写格式?

一个好的测试用例必须包含足够的内容,将这些内容可以拆分为八个要素:用例编号、用例标题、测试项目/模块、优先级、前置条件、测试数据、操作步骤、预期结果。

1. 用例编号:项目_模块_编号,例如:淘宝_购物车_01 :TB_GWC_01
2. 用例标题:预期结果(测试点)
3. 项目/模块:所属项目或模块
4. 优先级:表示用例的重要程度或者影响力p0~p4(p0最高),用户用的频率最高的称为p0

电商核心:卖货的流程,退货的流程、投诉、频率、抢优惠劵

商家核心:体系、商品上架,管理投诉、管理售后

5. 前置条件:要执行此条用例,有哪些前置操作
6.测试数据:操作的数据,没有的话可以为空
7. 测试步骤:描述操作步骤
8. 预期结果:期望达到的结果

5、用例练习

案例1:等价类划分及QQ测试 
1、等价类划分法
1. 说明 | 分类 | 步骤

说明:在所有测试数据中,具有某种共同特征的数据集合进行划分。

分类:有效等价类:满足需求的数据集合

           无效等价类:不满足需求的数据集合

步骤:1.明确需求,2.确定有效和无效等价类,3.提取数据编写测试用例

2. 案例

2-1需求:验证QQ账号的合法性        要求:6-10位自然数

2-2需求:验证某城市电话号码正确性

需求:1.区号:空或者是三位数据,2.前缀码:非 “0” 且非 “1” 开头的三位数字 ,3.后缀码:四位数字

七、规范的测试用例

1、 测试用例的基本知识

测试用例构成的八个要素

  1. 用例编号————>用例的唯一标识————>例如:QQMail_login_001
  2. 用例标题————>用例的简要描述————>在什么情况下做什么事有什么结果
  3. 测试项目/模块————>用例所属项目范畴————>例如:QQMail
  4. 用例级别————>用例重要程度影响————>例如:优先级P0,P1,P2,P3 等,P0是最高的
  5. 预置条件————>用例执行的前提————>例如:login登录要数据,前提就是需要什么条件
  6. 测试输入————>执行用例数据输入————>测试数据或环境准备
  7. 执行步骤————>执行用例的步骤————>步骤
  8. 预期结果————>应该得到的结果————>测试输入+执行步骤=实际结果;实际结果和预期结果做对比,如果相同说明成功,不相同就是用例执行失败了。

备注:上图中多了一个用例属性——在实际工作中根据项目的要求对用例设计要素可做调整,上述要素几乎覆盖常见用例设计模板

2、(功能)或黑盒测试用例的设计方法 

  • 等价类
  • 边界值
  • 错误推测法
  • 场景法
  • 因果图
  • 判定表
  • 正交试验法
  • 状态迁移图

 (1)等价类

等价类概念:在所有测试的数据中,具有某种共同特征的数据子集。

有效等价类:满足需求的数据

无效等价类:不满足需求的数据

等价类划分的规则

  输入数据类型                                划分等价类规则

                    数据个数

   (例:手机号由11位组成)

1个有效等价类:正确数据个数(11位)

2个无效等价类:大于和小于数据个人数

(num<11,num>11)

                        集合

  (例:电话毫秒都是数字组成)

1个有效等价类:正确数据集合(数字)

1个或多个无效等价类

(非数字:包括字母、汉字、特殊字符等)

            符合某些规则的输入

        (例:手机号首位为1)

多个有效等价类:符合某个规则的输入数据为1个等价类(首位为1)

若干个无效等价类

(首位不为1)

                     取值范围

  (例:输入0到100之间的整数)

1个有效等价类:正确取值范围(0<num<100)

2个无效等价类:大于和小于取值范围

(num<=0,num>=100)

                       布尔值

        (例:选择是否为男性)

1个有效等价类:true(是)1个无效等价类:false(否)
① 等价类设计测试用例的步骤

分析需求,确定输入数据类型

使用规则划分有效和无效等价类

设计用例, 覆盖有效等价类————>一条用例尽可能多的覆盖有效等价类

设计用例,覆盖无效等价类——————>一条用例只能覆盖一个无效等价类

② 等价类设计测试用例的案例 

例子:固定电话号码测试,要求:地区码(3/4位)+电话号码(7/8位)

1、分析需求,确定输入的数据类型

输入输入数据类型
固定电话号码测试地区码3/4位的数字
电话号码7/8位的数字

2、根据输入的规则,划分有效和无效等价类

输入输入长度集合组成规则
固定电话号码测试地区码3/4位数字以0开头
电话号码7/8位数字以非0非1开头
输入输入有效等价类无效等价类
固定电话号码测试地区码

1、以0开头的3位数字

2、以0开头的4位数字

3、以0开头的小于3位的数字

4、以0开头的大于4位的数字

5、以非0开头的包含非数字的4位字符串

6、以非0开头的4位数字

电话号码

7、以非0非1开头的7位数字

8、以非0非1开头的8位数字

9、以非0非1开头的小于7位数字

10、以非0非1开头的大于8位数字

11、以非0非1开头的包含非数字的8位字符串

12、以0开头的8位数字

13、以1开头的8位数字

3、编写测试用例:覆盖有效等价类——尽可能覆盖多个

4、编写测试用例:覆盖无效等价类——只能覆盖一个

输入有效用例无效用例
测试用例

012、2345678          覆盖1,7

012、23456789        覆盖1,8

0123、23456789      覆盖2、8

0123、2345678        覆盖2,7

01、2345678        覆盖3

01234、2345678        覆盖4

12A4、2345678        覆盖5

0123、2345678        覆盖6

012、234567        覆盖9

012、23456789        覆盖10

012、23AB5678        覆盖11

012、012345678        覆盖12

012、12345678        覆盖13

(2)边界值

  • 大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部
输入的参数值必须大于等于0同时小于等于100的整数
正确代码错误代码
num>-1或num>=0num>=-1或num>0
num<101或num<=100num<101或num<100
  • 边界值:选取正好等于、刚刚好大于或刚刚好小于边界值作为测试数据
① 边界值的上点、离点、内点

(0,100)

上点:0,100

离点:-1,1,99,101

内点:50

 

 

3. 适用场景

针对:需要有大量数据测试输入,但是没法穷举测试的地方。

①输入框、②下拉列表、③单选复选框

典型代表:页面的输入框类测试。

八、总结

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值