软件测试

  1. 软件测试
    制造业定义:以检验产品是否满足需求为目标
    软件行业定义:

    • 验证软件的正确性
    • 发现软件中的缺陷(bug)
  2. 为什么要测试?
    (1)、代码是人写的,难免会出错
    (2)、软件本身就会存在问题、非正常运行也会有问题
    (3)、环境会影响软件出现问题
    (4)、软件测试活动是保证软件测试质量之一

  3. 软件生命周期包括哪些阶段?
    (1)问题引入或定义
    (2)可行性分析(涉及经济、政治、法律、技术)
    (3)项目招投标
    (4)项目立项
    (5)需求分析
    (6)开发阶段(涉及、编码、测试)
    (7)上线
    (8)维护
    (9)下线

  4. 技术团队中的人员:
    ceo :首席执行官
    cto: 首席技术官
    pm: 项目经理
    职责:管理项目、负责项目进展、工作安排、从开发一款项目软件,知道上线;
    比如:影票系统,一个qq

    产品经理:
    职责:负责公司的产品,了解客户的需求,把客户的需求整理成一个需求文档,提供给开发和测试,开发安装需求写代码,测试按照需求写用例,执行用例
    产品或业务:专门了解需求、收集需求资料、辅助产品经理

    开发经理:
    职责:管理开发人员,安排开发人物

    开发:(程序员)
    职责:编写代码,实现需求
    前端开发:对页面布局,编写代码;如html、css、js等
    后端开发:负责代码逻辑编写 ;python、java、c++、c 、等
    前端和后端开发比例:1:5或1:6 前端开发少、后端开发多

    测试经理:(测试组长、测试主管)
    职责:管理测试人员、安排测试任务

    测试人员:(测试学习后的岗位:测试工程师、软件测试工程师、ai软件测试工程师、
    机器人测试工程师、硬件测试工程师、游戏测试、银行测试等)
    学习后水平:中级测试、高级测试
    (助理级测试、初级测试、中级测试、高级测试、测试专家顾问)
    职责:分析需求、编写用例、执行测试

    运维:负责公司环境、维护环境
    环境:开发环境、测试环境、生产环境(线上环境)

面试题:
1、你们公司规模多大?我们项目组20-30个人
2、项目组中有测试人员多少?小公司3-5个,大公司测试:100来个,我们这条业务线10个人
3、开发有多少人,前端开发和后端开发比例? 22 19后端 3个前端
4、测试和开发的比例?1:5或1:6
5、你们公司的环境 谁搭建? 运维 ,或者自己,测试经理
6、你们技术团队有哪些人?
项目经理、产品、开发、测试、运行

  1. 测试分类:
一、按是否查看代码划分
  1. 黑盒测试
    定义:黑盒是功能测试,测试中把被测试的软件当做一个黑盒子,不关心盒子的内部结构,只关注软件输入的数据和输出的数据
    如:计算机1+1就看结果:2 不看怎么具体运算,就看结果

  2. 白盒测试
    白盒测试又称为结构测试、透明测试、代码测试、逻辑测试
    定义:指打开盒子研究对软件的源代码和程序结果

  3. 灰盒测试
    灰盒测试是介于白盒测试和黑盒测试之间一种,灰盒测试用于集成测试阶段、不仅关注输入,输出的正确性,时也关注程序内部的结构

二、按是否运行划分
  1. 静态测试
    静态测试是指不运行被测试程序本身,仅通过分析和检查代码的语法、结构、来检查程序的正确性(比如:需求、软件设计说明)
    如:汽车在展厅、看颜色、外观等
  2. 动态测试
    动态测试:是指通过运行被测试程序、检查运行结果与预期结果的差异、并且分析运行效率,健壮性等
    如:汽车:试驾、查看汽车的动力等
三、按测试对象划分
  1. 功能测试
    如:登录,登录不了就bug
  2. 性能测试
    如:登录,登录成功,时间6s ,不合格,要求:5s
  3. 安全测试
    如:登录,登录成功 时间4s、数据泄露风险
  4. 兼容性:
    如:安卓系统:登录,登录成功 时间4s、不泄露、但是在ios系统上无法登录
四、按测试的实施划分
  1. 内部测试
  2. 外部测试
  3. 第三方测试
    比如:第三方被调公司被调
五、按是否手工执行测试
  1. 手工测试
    手工测试就是人一个个用例去执行,然后关注结果和测试用例相对应的预期
    缺点:执行效率低、量大容易出错
  2. 自动化测试
    通过工具或代码代替手工测试
    (1)接口自动化测试
    (2)ui自动化测试
    (3)app自动化测试
六、按区域 测试分化
  1. 本地化测试
  2. 国际化测试
    (1)语言
    (2)日前
    (3)货币单位
    (4)度量单位
    (5)外观
七、 按开发阶段划分

三个文档:需求规格说明书、概要设计说明书、详细设计说明书
1. 需求规格说明书:内容:整个项目设计,框架、功能模块的描述
2. 概要设计说明书:架构的初步设计文档,使用说明什么类型数据库、架构描述、设计、模块的名称
如:盖房子的而大概框架
3. 详细设计说明书
针对具体的实现、模块的具体实现、具体设计、架构的具体描述
如:房子的具体的装修设计

  1. 单元测试(ut)
    定义:是指单元是否满足详细设计文档的规格,能正确的执行,主要是对代码的测试;
    单元测试时最小的测试单位;
    在工作中单元测试一般是开发自测,如果需要测试进行单元测试,对测试的技术要求高,必须懂开发语言
    理解:单元测试,课本有10个单元,测试一个单元

  2. 集成测试(it)
    定义:是指多个单元组合验证是否满足概要设计文档,能正常执行,主要是模块与模块之间的数据交互;
    理解:集成测试,课本有10个单元,(测测试2个单元或2个单元以上,如期中考试1-6单元)

  3. 系统测试(st)
    定定义:是指把软件进行正常运行,对整个软件系统进行测试,验证这个系统能正常的运行,主要是测试一个整体业务的流程。
    理解:课本有10个单元,比如期末1-10考试,内容考试

  4. 验收测试(uat)
    验收测试:站在用户的角度去对软件进行测试,验证系统满足用户需求
    分为三种:
    (1)内部验收:alpha 测试
    (2)外部验收:beta 测试
    第三方验收:
    区别:
    a、人员不一样:
    内部验收,技术人员,测试开发都在,有问题及时解决,技术人员集中
    外部验收,客户方的员工测试,发现问题在反馈给开发,在修改,技术人员不集中
    b、时间不一样:内部验收时间周期短;
    外部验收时间周期长;
    c、测试地点不一样:内部验收,是在自己公司
    外部验收,是在客户方

1、it 集成测试和st 系统测试 -合并-sit 系统集成测试
2、sit测试:技术测试, uat测试--验收测试
3、sit环境 (测试环境),uat环境(验收环境)
4、
(1)需求--对应--验收测试和系统测试
(2)概要设计--对应--集成测试
(3)详细设计--对应--单元测试

posted @ 2026-11-02 22:11  4oi_ao  阅读(2)  评论(0)    收藏  举报