一篇文章了解软件测试基础知识

软件测试基础知识

一、课程介绍

1.1 课程知识点

  • 软件测试基础知识
  • 测试流程
  • 测试方法
  • 测试用例设计
  • bug管理

二、课程内容

2.1 软件测试基础知识

2.1.1 软件测试分类

  • 按测试技术分类

按测试技术,软件测试可分为:黑盒测试白盒测试灰盒测试

黑盒测试:即功能测试,测试人员不必了解代码,只需要检查软件是否按照需求文档完成。

白盒测试:测试人员需要了解代码程序结构和处理过程,按照代码逻辑进行测试,比如接口测试。

灰盒测试:介于黑盒和白盒之间的测试,既要像黑盒测试关注功能的正确性,也要对代码结构有一定的了解。

  • 按测试方式分类

按测试方式,软件测试分为:静态测试动态测试

静态测试:即需求文档下发到手以后,完成测试用例以前对需求文档进行检查的过程。

动态测试:具体的测试过程,需要对软件进行运行。

  • 按测试阶段分类?

按测试阶段,软件测试分为:单元测试集成测试系统测试验收测试

单元测试:对代码的最小单元——模块进行正确性的验证工作。验证代码在语法、逻辑上的正确性。

集成测试:即将各个单元组装到一起以后进行的测试,以此来验证接口之间的调用是否正确。

系统测试:将已经开发好的软件放到测试环境进行测试,验证功能、UI、逻辑等正确性。

验收测试:测试的最后一轮,类似回归测试,即将软件的整体功能执行一遍,它不像系统测试那样细致,主要进行的是正向的测试流程。比如产品上线以后会在线上进行测试,而在线上测试的时候主要进行的是正向流程的测试。

  • 按软件质量特性分类

按软件质量特性,软件测试分为:功能测试安全测试性能测试压力测试兼容性测试

每个分类都可以单独作为一个岗位存在,比如安全测试性能测试

2.1.2 测试流程

缺陷管理流程

2.1.3 测试方法

常用的测试方法包括:等价类边界值正交排列因果图场景法

  • 等价类
  1. 适用场合: 有数据输入的地方,可以使用等价类划分,将大量的数据划分出若干范围,从每个范围中挑选代表数据进行测试,避免穷举,提高测试效率.
  2. 等价类方法划分:有效等价类无效等价类 有效等价类:输入有意义,合理的数据集合; 无效等价类:输入无意义的,不合理的数据集合;
  3. 等价类划分法使用步骤:1.分析需求划分等价类(分为初步划分和细化);2.将等价类填写到<<等价类表>>中;3.从每个等价类中至少挑选一个代表数据,编写测试用例,执行测试
  • 边界值
  1. 适用场合:常用于数据输入的地方,一般作为等价类划分的补充,和等价类划分一起使用
  2. 使用步骤:找到有效数据和无效数据之间的分界点,对分界点及其两边的点进行测试.
  • 使用等价类+边界值测试的思路:A.先对有效数据进行测试- 1个测试用例尽可能的将多个控件的有效数据组合起来测(优化)B.再对无效数据进行测试- 无效数据需要单独测试(为了避免屏蔽现象)C.最后对多个无效数据组合测试(适当强化)
  • 因果图
  1. 适用场合: 界面中考虑控件的组合和限制关系的情况(组合数量较少)
  2. 因果图中常用的9个图形符号:恒等,与,或,非;互斥(E),唯一(O),包含(I),要求(R),屏蔽(M);
  3. 使用步骤:
    1. 找出输入条件的所有组合和限制.
    2. 编写测试用例,每一列对应一条测试用例.
    3. 每组输入条件组合对应的输出结果,画因果图,填判定表(画因果图可以省略)
    4. 找出所有的输入条件(因),和所有的输出结果(果);
  • 场景法
  1. 适用场合:当需要测试软件的业务流程(逻辑)时,适合用场景法,场景法是基于业务的方法,有测试人员模拟用户在使用软件的各种不同的情况;
  2. 场景法划分:基本流备选流基本流:也叫有效流或正确流,模拟用户正确的操作的过程;备选流:也叫无效流或错误流,模拟用户错误的操作的情景;
  3. 场景法的使用步骤:
    1. 根据列出场景填写场景表;
    2. 为每个场景编写适当的测试用例(不一定是1:1的)
    3. 分析需求,整理业务流程(逻辑),列出场景;
  • 正交排列
  1. 适用场合:对于参数配置类软件,以及兼容性测试时需要考虑各个控件之间的组合情况(组合较多),使用正交排列法选择较少的组合达到最佳的测试效果.
  2. 使用步骤:
    1. 选择合适的正交表(确定 m = 控件取值个数, k = 控件数)
    2. 编写测试用例
    3. 完成控件,控件取值对应因子和状态的映射.
    4. 分析需求,列出参与组合的控件以及每个控件的取值

2.1.4 测试用例设计

  • 测试用例

所谓“测试用例”即测试执行流程的文档表述。测试用例包括:用例编号、功能模块、测试功能点、前置条件、操作场景及步骤、预期结果、测试结果、优先级。

2.1.5 bug管理

jira、tapd等bug管理工具。

原文发布于微信公众号 - 自动化测试实战(gh_839e78b6ba28)

原文发表时间:2019-04-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券