测试基础理论


一、软件的分类

1、软件的定义

        一系列按照特定顺序组织的计算机数据和指令的集合

软件 = 数据 + 指令 +文档

2、应用场景分类

        工具类软件、游戏类软件、媒体类软件、电商类软件等

3、软件架构分类

        1.单机版软件

        2.分布式软件

            C/S架构软件:客户端需要安装软件

            B/S架构软件:客户端为浏览器

二、软件测试的定义和原则

1.软件测试的定义

    通过人工或自动化的方式来验证软件的实际效果与用户需求是否一致的过程

2.软件测试的原则

    原则一:测试显示软件存在缺陷

    原则二:穷尽测试是不可能的

    原则三:测试尽早介入

    原则四:缺陷集群性(2/8原则)

    原则五:杀虫剂悖论

    原则六:测试活动依赖于测试内容

    原则七:没有错误是好 是谬论

    原则八:程序员应避免检查自己的程序

    原则九:严格执行测试计划,排除测试的随意性

    原则十:应当对每一个测试结果做全面的检查

    原则十一:妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便

    原则十二:设计测试用例时,应当包括合理的输入数据和不合理的输入数据

    原则十三:测试用例应由测试数据和与之对应的预期输出结果这两部分组成

三、开发与测试模型的介绍

1.开发模型

    瀑布模型  定义: 将软件生命周期的各项活动规定为按固定顺序二连接的若干阶段工作,形如瀑布流水,最终得到软件产品的项目

2.测试模型

V模型:


    用户需求                    验收测试

        需求分析            系统测试

           概要设计    集成测试

                编码和实现

W模型


需求分析    需求测试                        系统安装    验收测试

    概要设计    概要设计测试          系统构建    系统测试

        详细设计    详细设计测试  模块集成    集成测试

                        编码实现            单元测试

四、软件测试的流程


阶段名|工作内容|产出物

|---------|------------|---------|

测试准备阶段|项目立项、需求分析、需求评审|需求文档、产品PRD

测试计划阶段|编写测试计划、计划评审|测试计划

测试设计阶段|提取测试点、编写测试用例、用例评审|测试用例

测试执行阶段|冒烟测试、执行测试用例、提BUG、回归测试|缺陷报告

测试完成阶段|验收测试、编写测试报告、项目上线|测试报告

五、软件测试的分类


1.按技术划分

    黑盒测试:只关心软件的输入输出结果

    白盒测试:按照内部逻辑结构和编码结构设计测试数据并完成测试的方法

    灰盒测试:基于外部表现同时结合内部架构来设计测试数据的测试方法

2.按阶段划分

    单元测试:对一个模块、一个函数或者一个类来进行正常性检验的测试方法

    集成测试单独模块组装成子系统或系统,进行测试的测试方法

    系统测试:对系统的功能及性能整体测试的测试方法

    验收测试:以用户测试为主,或测试人员共同参与检验软件质量的测试方法

3.按内容划分

功能测试

    功能测试:根据产品操作和需求文档,测试是否满足用户需求的测试方法。

    界面测试:与UI的实际图进行对比

    冒烟测试:验证核心功能是否正常运行的测试方法

    回归测试:修改旧代码,重新测试验证没有出现新的错误的测试方法。

    业务逻辑性测试:基本功能点已合格,准备多种测试数据,测试业务流程,判断最终结果符合预期的测试方法

    易用性测试:指用户使用软件是否方便

性能测试

    性能测试:通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统化的各项性能指标进行校验的测试方法。

    压力测试:通过逐步正价系统负载,测试系统性能的变化,并确定在什么条件下系统性能处于失效状态。

    负载测试:通过逐步增加系统负载,测试系统性能的变化,在满足性能指标的情况下,系统所能承受的最大负载量的测试。

    并发测试:是一个负载测试和压力测试的过程即逐渐增加并发用户数负载直到系统的瓶颈,通过分析资源监控指标等来确定系统并发性能

    兼容性测试

    app:手机系统、版本、厂商、型号、屏幕分辨率、屏幕类型(水滴型、全面屏、折叠屏、曲面屏、双面屏)

    web:浏览器4种内核

        Trident内核:IE、360兼容模式、搜狗兼容模式

        Gecko内核:火狐

        Bink内核:谷歌(Chrome)、360极速版、搜狗极速版

        WebKit内核:Safari

4.按其他划分

    冒烟测试、随机测试、安全测试、探索性测试、回归测试、Alpha测试、Beta测试

    随机测试:根据测试者经验无需测试用例对软件进行功能和性能的抽查测试

    安全测试:通过不同的测试方法,检验程序、网络、数据库安全性的测试方法

    探索性测试:碰到问题时,能够明确整体测试计划进行测试的方法

    Alpha测试:俗称内侧

    Beta测试:俗称外侧

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一 软件测试行业基本介绍 1. 为什么需要软件测试 一款软件从无到有会经历很多开发阶段由不同的人来参与开发,所以最...
    蔡根花儿阅读 459评论 0 0
  • 一、软件分类 单机版:不需要联网的软件 分布式:需要联网 C/S:需要下载客户端 B/S:直接浏览器打开即可 2....
    KiKi_2005A阅读 423评论 0 0
  • 目录: 1、测试用例设计模板 2、测试用例设计方法 3、需求分析 4、测试计划 1、测试用例设计模板 用例模板 用...
    初尘668阅读 250评论 0 0
  • 关于《软件测试工程师面试考点全汇总》文中第一部分测试基础理论类的题目答案解析。 第一部分、测试基础理论类 1、白盒...
    M虫神阅读 740评论 0 4
  • 性能测试基础理论 1.什么是性能测试? 答案:系统在一定压力下,通过模拟生产环境运行的业务压力和使用场景组合,查看...
    许小小晴阅读 827评论 0 1