美文网首页程序员
软件测试方法课程笔记(1)

软件测试方法课程笔记(1)

作者: Mezereon | 来源:发表于2018-09-13 15:36 被阅读0次

    举某些例子, 软件测试方法有黑盒测试, 白盒测试
    按阶段来区分的话有单元测试, 集成测试, 系统测试
    按目的来分有性能测试

    对于测试来说应给出相应的标准来量化, 对页面应用等测试(自主进行).
    最后是软件测试的自动化以及测试的管理

    该课程并不会给出具体的工具, 应该针对应用进行相应的修改

    成绩划分(Exam70%, Discussion10%(twice, PPT and report), quiz20%(five times))

    1. 概述

    1.1 为何软件测试是需要的

    • 软件无处不在
    • 产品的合格率(利用指数函数的性质来说明多部分系统难以完美)
    • 举出例子说明软件失效造成的灾难
      • North east Black 停电事故
      • Ariane5 爆炸
      • Mars Polar Lander 传感器失效

    (1) 有错误的软件是不安全的
    (2) 世界上大部分的经济损失都是由于软件失效
    (3) 充分的测试可以规避风险
    (4) 我们希望软件是可靠的

    1.2 软件测试的部分内容(什么是缺陷, 历史, 概念)

    Error, Fault, Failure, Incident都统称为缺陷

    软件产品中所存在的问题, 最终表现为不能满足客户的需求

    缺陷之定义:

    • 满足用户期望与否
    • 非正确执行的可行性
    • 所有类型的软件问题

    缺陷的源头:

    • 需求定义
    • 设计
    • 实现
    • 支持的系统
    • 软件测试的完整性
    • 更新迭代

    软件的开发流程都有可能出现缺陷

    什么时候会出现缺陷:

    • 该完成没有完成
    • 不该完成而去做
    • 没有提及的去做了
    • 没有提及但是应该完成的没有完成
    • ....

    大部分情况都会产生缺陷

    正确的程序应该具有的特性:

    • 没有语法问题
    • 运行中没有明显问题
    • 没有不合适的语句
    • 有效的输入, 正确的输出
    • 无效的输入, 正确的输出
    • 任何可能的输入, 正确的输出

    软件质量, 软件质量保证, 质量控制 (软件质量的评判是多维度的)
    软件质量保证给出了一系列章程的制订
    质量控制是具体的操作, 是质量保证的具体细节

    1.3 软件测试的定义

    首先是定义:

    1. 软件测试是系统化, 有计划的行动步骤
    2. 通过测试能够给出产品和服务质量的相关数据
    3. 测试可以发现用户期望实现与否
    4. 测试是软件质量保证的关键步骤
    • verification(验证) 从开发者的角度
    • validation(确认) 从用户的角度

    关于测试的类型有许多种, 包括:

    1. 根据测试生成的源来划分(C1)
    2. 根据生命周期中所处的位置来划分(C2)
    3. 根据测试目标(C3)
    4. 根据被测对象的特征(C4)
    5. 根据模型进行划分(C5)

    C1:
    根据需求 --> 黑盒
    根据代码 --> 白盒
    根据形式化模型 --> 模型测试
    组件接口 --> 接口测试

    C2:
    编码 -->单元测试
    集成 --> 集成测试
    系统集成 --> 系统测试
    维护 --> 回归测试
    发布之前的版本 --> beta测试

    C3:
    系统性能 --> 性能测试
    etc

    测试用例实质上就是一组输入和输出, 最后看预期的结果是否相符

    相关文章

      网友评论

        本文标题:软件测试方法课程笔记(1)

        本文链接:https://www.haomeiwen.com/subject/ysgwgftx.html