| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发测试 -> 测试第二节重点(什么是需求?测试用例,什么是Bug?软件开发的5个模型,软件测试) -> 正文阅读 |
|
[开发测试]测试第二节重点(什么是需求?测试用例,什么是Bug?软件开发的5个模型,软件测试) |
******为重点考点 一丶什么是需求? 1.需求的来源 (1)盈利 ①商业app(淘宝、美团、拼多多..)-----》用户需求 ②EPR办公软件之类-----》甲方提需求 (2)提高工作效率 公司内部的系统,比如物流公司,为了提高分拣货物,仓储货物的效率,开发一些想赢的系统提高员工的工作效率 ------》业务人员提出的需求(Boss提出的需求) 用户需求/业务人员提出的需求---统称为用户需求 ******软件开发的流程: 需求——计划——设计——开发/编码——测试——运行维护(上线维护) 用户需求:系统的使用者提出的需求 软件需求: 系统要满足用户的期望,所需要的条件或者权限 ? ? ? ? ? ? ? ? ? ?用户需求经过验证和分析之后转化成合理的需求,一般以文档的形式展示 ? ? ? ? ? ? ? ? ? ?软件需求是用户需求的细化,细节的进一步具体实现文档 ? ? ? ? ? ? ? ? ? 需求是软件测试人员测试的依据 案例: 一.用户需求: 平台支持邮箱注册 二.用户需求转化为软件需求 上图作为参考 从测试人员角度看需求 用户需求——软件需求——从软件需求提炼出测试需求点——设计测试用例 别忘记在用户需求需要进行验证分析进而转化为软件需求 /测试人员如何才能深入了解需求? 1.把自己当做用户 2.多和需求的来源交流,把自己带入用户去体验 3.多多积累经验(软件测试实践为主,理论为辅) 4.熟悉系统的所有业务需求 5.从需求一开始(用户提出需求开始)就介入,不断的和用户或者项目组人员讨论参与 //案例结束 2.测试用例 测试用例:测什么?怎么来测?(业务,工具) 测试用例的概念:测试用例就是向被测试系统的某一个功能点发起的一组集合,包括测试环境、测试数据、测试步骤、预期结果(这四个很重要)(标题、测试功能,方法、重要性、优先级、测试方法等) 比如网易邮箱: ?测试用例: 标题:输入符合规范的邮箱,密码,手机号注册 测试环境:?Microsoft Edge? 96.0.1054.34(浏览器? 版本) Windows10? 联想拯救者Y7000 测试数据(需要具体的数据): 邮箱:1290631276@qq.com 密码:ouyang123654 手机号:1659746321 测试步骤: 1.在浏览器中打开网易邮箱注册页面网易邮箱大师-高效强大的全平台邮箱客户端(这是一个链接) 2.输入测试数据 3.点击同意勾选框 4.点击立即注册 预期结果:注册成功 3.什么是Bug?*************** 如果需求规格说明书(软件需求)存在并且合理,不符合需求规格说明书的就是软件错误(Bug);如果需求规格说明书(软件需求)不存在,用户的需求存在并且合理,不符合用户需求的就是软件错误(Bug) 4.软件开发的5个模型 瀑布模型: ?特点:瀑布模型在软件工程中占有重要地位,是所有其他模型的基础框架。瀑布模型的每一个阶段都只执行一次,因此是线性顺序进行的软件开发模式。(每一个阶段比较独立) 在此:测试是产品质量的最后一道把关,如果有问题,问题会直接展示给用户。 缺点:串行,有去无回型;测试介入晚,导致项目前期的问题到后面才发现,是去了错误及时修正的机会,并且不支持需求频繁变动的项目 螺旋模型: 特点:一个项目分很多层小迭代 优点:适合风险比较大并且整个项目也比较庞大的项目,每一个迭代做风险分析;可以讨论项目是否有价值继续 缺点:风险分析要求很高,需要投入专业的人员,导致时间,项目支出费用会很高(风险分析对测试人员和开发人员要求比较高) 迭代、增量模型: 文字叙述:比如4周时间来开发一个系统的A,B,C,D四个模块的功能 增量:第一周完成A模块,第二周完成B模块,第三周完成C模块,第四周完成D模块 迭代:第一周完成A,B,C,D四个模块的基础框架部分,第二周完成基础功能的开发和测试,第三周进一步开发负责的功能,第四周完成系统的细节 ***********敏捷开发模型: 特点: 1.重目标,重产出,轻文档,轻流程 2.注重和客户的沟通,整个研发团队有效沟通,注重产品的质量,注重产品规定的交付日期 3.敏捷开发周期很短(1~4周时间),研发团队人员大概5~9人 敏捷开发有很多种方式,其中scrum是比较流行的一种 scrum流程: 角色: PO(product owner)产品经理:负责整理用户需求,形成userstory SM(scrum Master)项目经理:负责保证整个敏捷开发流程的顺利实施,开发和各种协调等 ST(scrum team)研发团队:负责整个项目的研发,各种技能的人组成:测试、开发、UI设计师等 scrum流程图: 具体过程: 1.发布计划会,产品经理把需求整理成userstory,形成product backlog,会议上讨论userstory的重要性排版,决定本期迭代要开发的userstory; 2.迭代计划会议,研发团队确认迭代任务,分解userstory,将userstory分解成一个个的任务,确定任务完成的时间,具体的人员等 3.每日站会,三个问题:昨天完成了什么?遇到什么问题?今天的计划?(重点在于总结和解决出现的问题,以及链接整个研发的进程) 4.产品演示会议:给客户和Boss演示产品研发的成果,客户会提出改进意见,PO(产品经理)整理后形成新的userstory 5.项目总结:总结这次迭代的优缺点,不足的改进,优化本次敏捷开发流程 // 5.软件测试模型 软件测试V模型 ? 左边是开发的每一个阶段,右边是测试的每一个过程,左边的每一个阶段对应是右边测试每一个阶段的依据 缺点:串行过程,测试人员实在编码后进行介入的,导致前期的错误后期才能发现,后期测试人员发现时,已经失去了错误及时纠正的最好时机。 软件测试W模型: W模型又被称之为双V模型 特点:测试人员在项目需求开始就介入,前期的问题就可以及时发现,并且测试和开发阶段是并行的,一个V是开发阶段,一个V是测试阶段 缺点:串行,阶段性强,不适合需求频繁变更的项目,不支持敏捷开发 ? ? ? ? ? |
|
开发测试 最新文章 |
pytest系列——allure之生成测试报告(Wind |
某大厂软件测试岗一面笔试题+二面问答题面试 |
iperf 学习笔记 |
关于Python中使用selenium八大定位方法 |
【软件测试】为什么提升不了?8年测试总结再 |
软件测试复习 |
PHP笔记-Smarty模板引擎的使用 |
C++Test使用入门 |
【Java】单元测试 |
Net core 3.x 获取客户端地址 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/18 5:33:20- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |