zoukankan      html  css  js  c++  java
  • 软件测试_基础知识

    为了二月换工作做准备,把学习软件测试的知识都记录下来,方便自己以后复习,也方便大家浏览。

    1.  开发模型——瀑布模型

    需求——设计——编码——实现——软件测试——完成——维护

    改进:测试要的等所有的开发完成了才开始,需要预留很多时间,而且如果有很大的问题,就容易影响项目上线,而且也不好改。(越早发现问题修改成本越低),每个阶段都融入小的迭代。

    2.  开发快速原型模型

    实现一个基本原型,让用户对原型进行评价,逐步调整,使其满足用户最终需求。

    优点:适合不能确定需求的软件。

    缺点:不适合开发大型系统,因为容易归西,改到后面就有很大的问题了。

    3.  测试 V 模型

    需求分析、概要分析、详细设计、编码、单元测试(单一系统模块)、集成测试(所有模块)、系统测试、验收测试

    4.  验收测试分为:

    内测版(alpha)内部交流版本,可能存在很多 bug,不建议用户安装

    公测版(beta)面向所有用户,通过用户的反馈再去修改细节,可以省钱。

    候选版(Gamma),差不多就是正式版本

    改进:自上而下逐步求精,每个阶段分工明确,便于整体项目可控,但是实际工作中,需求经常变,导致 V 步骤反复执行,费事费力,每个步骤都可以进行小的迭代工作

    5.  W模型(开发一个 V ,测试一个 V 组合起来的模型:W 模型也叫做 双 V 模型)

    改进:测试伴随整个开发周期,需求和设计同样要测试,更早介入测试,可以更早发现缺陷,方便项目整体管理。

    6.  黑盒测试

    又称数据驱动测试,完全不考虑从内部机构和特色,只注重软件测试的功能需求(不看代码)

    分类:

          a. 功能测试:逻辑功能测试、界面测试、易用性测试、安装测试、兼容性测试

          b. 性能测试(工资高):时间性能、空间性能、一致性能、稳定性、负载测试、压力测试

    7.  白盒测试

    研究程序结构和源代码

    8.  随机测试

    针对重要功能,新增加的功能,特殊情况,以前发现过重大 bug 的模块进行二次测试,也叫做探索测试,它可以结合回归调试来使用。

    9.  软件测试分类

    a、按阶段划分:单元测试、集成测试、系统测试

    b、是否覆盖代码:白盒测试、黑盒测试(功能测试、性能测试)

    c、是否运行:静态测试(不运行程序)、动态测试(运行程序)

    d、其他:回归测试、冒烟测试、随机测试、验收测试

    e、是否自动化:人工测试、自动化测试

    10.  测试用例:测什么、怎么测

    11.  等价类划分法

    控制变量法,把所有类都分出来,取一个代表测试

    思考步骤:确定有效等价类和无效等价类——有效等价类划分(题目条件,注意边界值)——无效等价类(有效等价类的补集,注意考虑中文、英文、特殊符号、空格、空)

    ⚠️:考虑输入长度、类型、组成规则、是否为空、是否区分大小写、是否重复、空格

     

  • 相关阅读:
    MIne FirstBlog
    P6563 [SBCOI2020]一直在你身旁
    P6563 [SBCOI2020]一直在你身旁
    T122085 [SBCOI2020]时光的流逝
    LC 918. Maximum Sum Circular Subarray
    1026 Table Tennis
    LC 1442. Count Triplets That Can Form Two Arrays of Equal XOR
    LC 1316. Distinct Echo Substrings
    LC 493. Reverse Pairs
    1029 Median (二分)
  • 原文地址:https://www.cnblogs.com/yaozhi/p/9996327.html
Copyright © 2011-2022 走看看