一阶段:

一周:系统测试的流程规范

二周:数据库基础

三周:Linux操作系统

四周:项目实战

五周:APP专项测试

段位:初级测试工程师、初中级测试工程师的能力

二阶段:

一周:Python基础

二周:Python高阶

三周:接口测试(基于Python自动化实施方案)

四周:UI测试(基于Python自动化实施方案)

段位:中级工程师

三阶段:

一周:性能测试流程规范

二周:性能测试高阶

三周:性能测试项目实战

四周:自动化测试框架设计实现

段位:中高级、高级

四阶段:

一周:微服务架构基础

二周:微服务项目系统测试和接口测试

三周:微服务项目UI自动化测试和性能测试

四周:协同周、和研发团队做一个实际互动的项目

二、软件测试相关概念

1. 软件测试

1. 软件

1. 软件的历史、定义、概念

· 计算机:1929年诞生

(电子计算机、电子管计算机,第一代。1956:第二代为晶体管计算机。

第三代为小规模集成电路。第四代为大规模集成电路。计算机代表硬件:躯壳。计算机软件:灵魂)

· 软件的发展

第一代:纸带上打孔,用于科学计算,批处理。

第二代:编程:汇编语言(低级语言)

第三代:面向过程的程序,C语言,cobol,Fortran(高级语言)

第四代:面向对象的程序,C++,java,ruby,Python

第五代:大数据、人工智能

· 软件的定义

IEEE(国际电气化工程协会)支撑计算机程序运行的代码、文档、数据统称为软件。通常称为:计算机程序。

· 软件工程学

目标:解决软件研发过程中出现的问题

软件危机:预算经常超支、交付延迟、软件质量差、维护困难、

软件的可移植性差,两个类似的软件很少能够重用

软件工程七原则:

2. 软件的作用

1. 软件的生命周期

1. 软件定义:指的是要开发一款什么样的软件:领域、范围

1. 可行性研究:从技术、经济、操作性方面区研究

2. 需求分析

任务:确定待开发软件的功能需求、性能需求和运行环境约束,编制软件需求规格说明、

软件系统的确认测试准则和用户手册概要【重点】

软件需求规格说明(SRS:software requestment specification)是开发工程师的一句,同样也是测试的依据

2. 软件设计与实现

1. 概要设计:技术选型、框架搭建:dev

2. 详细设计:定义函数、接口

3. 实现:编码、调试

4. 集成测试:单元测试、接口测试

5. 确认测试:系统测试、性能测试

3. 软件的使用、退役

1. 发布上线、运营

2. 退役

2. 测试

1. 测试的历史、定义、概念

1. 测试的历史发展

1. 1951年的时候,才把测试从开发工作中独立出来。

2. 测试的发展阶段

1. 测试等同于调试,在1951年之前,一个登录功能:用户名、密码正确、提示登陆成功。

2. 测试主要用于确认软件产品是按照需求要求来实现的。关键词:确认

3. 测试除了要确认之外,还必须使用破坏性的用例,来验证软件产品没有做不允许做的。关键词:验证

4. 测试是为了预防可能出现的错误。关键词:预防。

3. 定义:为了发现软件中存在的错误或问题而运行软件的过程。

1. 目的:发现问题。找bug,尽可能的找出bug

2. 手段:运行程序,运行软件

3. 本质:过程-->完成某一个事务所必须的步骤统称。

4. 概念【重点】

1. 测试用例:一次实际的测试数据和操作组成的集合。比如:测试登录功能

2. bug:缺陷的别名

3. 缺陷:软件产品中存在的不符合需求的功能、实现或者错误的描述或实现

4. 缺陷包含:错误、故障、失效,因为错误,所以可能导致故障,故障导致功能失效。

5. 测试工程师的角色扮演:

1. 用户

1. 第一种:正常用户,是需要通过对软件进行操作来达成自己某些业务目的的人

2. 第二种:粗心的用户:在使用过程中会制造一些小麻烦的人。比如:错误输入,不按照要求操作,心急的用户

3. 第三种:破坏者:使用软件的目的是为了破坏软件的运行、窃取数据等等。黑客。

2. 工程师:在某个领域里面掌握了相关业务的流程规范、方法论、技术体系、工具体系的专业人士

1. 计划

2. 流程规范,规范等同于标准

3. 方法论、技术

4. 工具体系

2. 测试需要流程规范

3. 测试的方法论、技术

4. 测试的工具体系

软件开发模型

一、导入

测试工作是从研发中分出来的,所以测试工作是研发过程中的一部分,要做好测试工作,必须深刻理解研发过程和模型

研发工程师相当于挖战壕,测试工程师相当于测试战壕

二、研发模型

1. 早期模型

· 大爆炸:随便做,计算机工程师

· 边做边改

2. 中期模型

· 瀑布模型:1970年

定义:把软件研发的过程按照需求分析、设计、实现、测试、发布的顺序来进行规划的一种研发方法论。

优点和缺点

1. 至少有一个可用的框架

2. 对于规模小的项目非常适用,手到擒来

3. 节约成本,保障项目交付成功率,从原来不足50%,一下提高了80%

4. 交付质量提高好几倍

缺点:

1. 不适用于大中型项目

2. 需求变化频繁项目不适合

3. 过程中间缺少反馈,早期的问题要到很晚才能发现,导致维护成本加大

4. 交付效率低

· 增量迭代模型(迭代增量式开发或迭代进化式开发)

每次只设计和实现这个产品的一部分

逐步完成的方法叫迭代开发

每次设计和实现一个阶段叫做一个迭代

过程:

需求分析

迭代计划:把需求进行拆分,选最主要的部分先开发,拆成多个迭代

设计

实现

测试

优点:

可以把大项目拆分成多个小的项目来完成

不惧需求变化,因为迭代周期较短,变化的需求可以在下一个迭代周期里面解决

在研发过程中可以进行有效反馈,通过反馈才能进行效果评估

交付效率也得提高

缺点:

划分迭代数量没有标准,根据产品经理的能力决定(可以通过同行评审来克服这个问题)

迭代次数越多,管理维护成本越高,问题也越多

· 螺旋模型:将瀑布模型和快速原型模型结合起来,特别适合大型复杂的系统

· 敏捷模型(敏捷实践):以用户的需求进化为核心,采用迭代、循环渐进的方法进行软件开发,

是一种应对快速变化的需求的一种软件开发能力。

个体与交互胜过过程和工具、可用的软件胜过完备的文档、客户协作胜过合同谈判、响应变化胜过遵循计划

价值观:以人为本、目标导向、客户为先、拥抱变化

敏捷时间价值观对测试的指导意义:

以人为本:我们要充分和产品经理、研发工程师进行面对面的沟通和交流,及时

目标导向:测试过程中有限软件的功能验证和确认,可用性

客户为先:要及时听取客户的意见,有机会和客户进行充分交流,理解客户的需求

拥抱变化:测试工程师要深刻理解业务,理解被测对象,终身学习

敏捷实践分类:

极限编程:螺旋式开发方式,四大价值观:沟通、简单、反馈、勇气(对于一般的团队来说做不了)

scrum:冲刺,有若干个迭代周期组成,一个短的迭代周期称为一个sprint,重要特性:迭代开发,

增量交付,适用于外包,自组织团队,高优先级的需求驱动,交付就是软件发布给用户使用,

自组织团队:团队中的每个成员自发的去工作和改进自己的工作,高优先级的需求驱动就是所有需求都必须标注优先级,标注方式是使用数字,

从1开始不重复的标注,每次sprint,按照优先级从高到低选取一部分(2-4周的量)

软件测试模型

一、V模型:左右两边对照,基于瀑布模型来做的,从左到右描述了基本的开发行为

1. 定义

2. 作用

3. 优点

明确的标明了测试和开发各个阶段的对应关系和等级

4. 缺点

如果在需求阶段、概要设计阶段、详细设计阶段出现错误,那么必须在测试过程中才能发现。修复成本会成倍上升

原因:测试是在编码之后开始的

二、W模型

优点:

开发伴随着整个开发周期,需求和设计同样要测试

更早介入测试,可以发现初期的缺陷,修复成本低

分阶段工作,方便项目整体管理

缺点:

开发和测试依然是线性的关系,需求的变更和调整,依然不方便

如果没有文档,根本无法执行w模型,对于项目组成员的技术要求更高

左侧:

静态测试:精读文档,同行评审

右侧:

动态测试:运行程序,执行测试用例

测试执行的四个阶段:单元测试、集成测试、系统测试、验收测试

重要的概念:

单元定义:C中是一个函数,Java中指一个类,在图形化的软件中,单元一般指1个窗口,1个菜单。

单元测试:模块测试,针对软件设计中的最小单元进行正确性检查的测试工作。需要从程序的内部结构出发设计测试用例。

集成测试:又称组装测试,通常在单元测试的基础上,将所有程序模块进行有序的、递增的测试。

系统测试:将整个软件系统看成一个整体来进行测试,包括对功能、性能、以及软件所运行的软硬件环境进行测试。

Alpha测试:内测,公司内部员工进行测试,主要看有没有功能缺失或系统错误,Alpha测试完后一般不会有大问题了。

Beta测试:公测,主要看用户对软件外观、使用方便等反应。选一部分用户参与测试。

三、H模型:软件测试过程完全独立,开发做开发的工作,测试做测试的工作。

优点:

软件测试完全独立,贯穿整个生命周期,且与其他流程并发进行。

软件测试活动可以尽早准备、尽早执行,具有很强的灵活性。

软件测试可以根据被测物的不同而分层次、分阶段、分次序的执行,同时也是可以被迭代的。

缺点:

管理型要求高、技能要求高、测试就绪点分析困难,对整个项目组的人员要求非常高

四、X模型

分片执行

质量模型

1. 为什么要讲质量模型?

如何衡量一个商品的质量?大家评估的标准都是有差异的,每个人侧重点不一样。

ISO:国际标准化组织,经常邀请各国的、各领域的专家针对某些领域指定工业级标准。

ISO9126和ISO25010都提到了软件产品的质量模型:这个模型是世界范围都认可的模型。

2. 质量是什么?

· 质量:产品质量是值在特定的使用条件下产品满足明示的和隐含的需求所明确具备能力的全部固有特性(内在特性),

体现了产品满足产品要求的程度(外部表现),是产品的质量属性。

· 特性或能力:内部质量,需要满足特点使用条件的各种需求。

· 外部质量:内部特性的一种呈现,内部特性决定了外部质量。

· 质量就是产品所具有的内部特性或能力。

3. 质量模型有什么用?

· 质量模型定义了软件产品必须具备的相关的内部特性以及每个类型所必须具备的属性

· 要评估一款软件产品的质量是否符合需求,就可以依据质量模型来进行

4. 质量模型怎么指导测试工作?

一、ISO25010质量模型

软件系统测试流程规范相关推荐

  1. 2.系统测试流程规范

    系统测试流程规范 一.学习任务 软件相关的核心概念 系统测试流程规范 项目管理软件的使用 用例设计方法 缺陷管理 二.软件相关的核心概念 软件:程序运行所需的代码.数据.文档的集合 软件测试:(IEE ...

  2. 软件性能测试有哪些功能点,软件性能测试流程规范说明

    软件性能测试流程规范说明 发表于:2011-01-14来源:作者:点击数: 标签:软件 软件性能测试流程规范说明 文档控制 Date Version Description Author 2006-4 ...

  3. 一文看懂软件测试方法和规范

    软件测试方法是指测试软件的方法.随着软件测试技术的不断发展,测试方法也越来越多样化,针对性更强:选择合适的软件测试方法可以让我们事半功倍.本文主要介绍的是软件测试方法和规范,跟随小编一起来了解一下具体 ...

  4. 软件测试工作流程规范

    对于软件测试工作流程,以及过程中的应遵循的流程规范,对软件测试初入者来说可能一知半解,今天笔者就将曾用过的一份软件测试工作流程标准整理分享给大家,希望能让你对测试流程有个清晰的认知.如果你采纳,那也注 ...

  5. (一)软件开发流程与图

    目录 软件开发流程 软件工程与图 业务架构设计 软件开发流程 业务调研:产品经理搞明白需求是什么 需求分析:去分析产品经理给的需求文档,梳理出系统要干嘛 概要设计:作为架构师,我们自己去设计全局性的技 ...

  6. 软件开发流程--学习笔记

    软件开发流程--学习笔记 背景 产生原因及作用 个人理解 软件开发流程 需求 需求调研 需求分析 需求确认 设计 概要设计 详细设计 编码 测试 交付 维护 知识拓展 软件开发生命周期(SDLC) 软 ...

  7. 软件开发流程包含哪些内容

    2019独角兽企业重金招聘Python工程师标准>>> 能否开发出一个好的软件,关键是看软件开发前期所做的工作,重点是这个软件有没有一个好的 软件开发流程,因为一个好的软件开发流程关 ...

  8. 第十五届全国大学生智能汽车竞赛线上比赛流程规范

    第十五届全国大学生智能汽车竞赛 线上比赛流程规范 作者:卓晴博士,清华大学自动化系 更新时间:2020-08-03 Monday ■ 简述   第十五届 全国大学生智能汽车竞赛 由于受到 新冠病毒(C ...

  9. 软件开发模型_QT开发(二十三)——软件开发流程

    一.软件开发流程简介 软件开发流程是通过一系列步骤保证软件产品的顺利完成,是软件产品在生命周期内的管理学. 软件开发流程的本质是软件开发流程与具体技术无关,是开发团队必须遵守开的规则. 二.常见软件开 ...

  10. 宏基因组大数据分析的质量控制流程规范

    宏基因组大数据分析的质量控制流程规范 郑广勇1,杨桢1,曹瑞芳1,刘婉2,李亦学1,2,张国庆1,2 1. 中国科学院上海生命科学研究院生物医学大数据中心,上海 200031 2. 上海生物信息技术研 ...

最新文章

  1. linux apache配置多线程,linux apache 日志配置
  2. python unittest断言大全_Python-unittest框架 断言使用
  3. promise封装ajax
  4. 卡通驱动项目ThreeDPoseTracker——关键点平滑方案解析
  5. JQuery Datatables 数据操作
  6. android图片闪动动画,android图片闪烁或帧动画
  7. javascript 西瓜一期 02 编程语言与标记语言的区别
  8. (二十六)java版spring cloud+spring boot 社交电子商务平台-Eureka介绍
  9. itextsharp创建pdf
  10. 解决SVN安装语言包后无法选择中文的问题(亲测可行)
  11. python画图配色_python matplotlib包图像配色方案
  12. 笔记本电脑装固态硬盘和内存
  13. 4月2日云栖精选夜读 | 对话行癫:解密阿里云顶层设计和底层逻辑
  14. Java打印101-150之间所有的质数
  15. 企业如何建立完善的管理体系
  16. 二层交换、三层交换和路由的原理及区别
  17. 74HC595驱动四位数码管
  18. java 微秒_Java中的当前时间(以微秒为单位)
  19. CSS基础综合案例1-新闻
  20. 排序模型进阶-WideDeepWDL模型导出

热门文章

  1. 机器学习与深度学习视频讲解
  2. X4扭曲字体或图形 coreldraw_cdrx4精简版下载|coreldraw x4 sp2 精简版下载增强版 15.2.3.1614 - 系统天堂...
  3. pandownload使用
  4. freemaker word转html,ftl文件-word文档转化成ftl文件
  5. Mac将Wps本地文件备份到云端
  6. mongos、nanomsg、zeroMQ简述和go-mongos使用实例
  7. Auto CAD:CAD软件之顶层菜单栏(文件、编辑、视图、插入、格式、绘图、标注、修改、参数、窗口、数据视图)简介之详细攻略
  8. 分类学 · 狡兔为何偏要有三窟???
  9. 安立公司推出CPRI RF 测量选件
  10. graphpad数据小数点_Image J和Graphpad如何对Western Blot条带灰度分析【干货】 | 每日生物评论...