请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册
  • 便民服务
  • 关注我们
  • 社区新手
三.软件的生命周期
1.时间概念:比如:一部手机从生产到报废这个过程
2.通常软件生命周期包括哪些阶段?
①:客户问题引入或定义
客户提出的需求比较粗糙,需要和产品经理进行沟通,客户提出的需求多少会存在一些问题,经过讨论分析,可以做
②:可行性分析:(涉及经济商业论证,政治,法律,技术等)是否挣钱,是否触犯法律,是否技术支持?
③:项目招投标
考虑交付时间,金额
④:项目立项:
成立一个项目组,招人:测试,开发,运维,资源,前三个月需要交付什么,后三个月需要交付什么
⑤:需求分析
产品经理主角,拿客户的需求进行提炼,梳理逻辑,转为项目需求,给到测试,开发运维【阅读和分析,有问题记录下来】产品经理组织评审会议产品主讲,线化文档
⑥:开发测试阶段(设计,编码,测试)开发编写代码,编写完成后自测,测试了解需求,编写用例,执行用例,提出bug,测试完后,安排上线
⑦:维护:运维人员负责维护,客户一般交30%的定金,软件交付后再付60%的金额,10%维护一年
四.v 模型(项目的阶段)重点
①:用户需求:用户提出的要求,用户提出的需求不详细,笼统粗糙,找到产品经理
②:需求分析阶段:产品经理根据客户需求提炼出项目需求(研发团队看得懂的)给到研发团队(测试,开发等)
阅读分析,有问题记录下来,这个时候,产品经理会通知开会,产品经理主讲,测试开发
听,提出问题,讨论是否合理,产品需要调整需求,最后会形成需求规格说明书(
SRS)
③:概要设计阶段:简称HLD,开发做的,
例子:软件上,我们微信:微信,通讯录,发现,我,主要搭建四个模块,具体模块中的功能没有规划
④:详细设计阶段:简称LLD,开发做的
根据概要设计阶段设计好的四个模块,针对这四个模块具体需要实现什么功能,比如:微信模块需要实现:聊天,发红包,转账等
⑤:编码和现实阶段:根据详细设计然后编写代码(
coding
⑥:单元测试阶段(
UT):又称为白盒测试如:透明的盒子,里面的逻辑都可以看清楚,可以看到内部结构和内部数据)
开发做的自测,也称为代码测试,开发人员针对各自开发的模块进行测试【语句覆盖和路径覆盖中,路径覆盖是白盒测试中最想的方法】
⑦:集成测试(
IT)也称为【灰盒测试】,把上面的一个个编写好的模块串联起来测试,之前开发对一个一个模块自测问题,需要对这些模块放在一起看能否运行所以也称为【接口测试】
⑧:系统测试(
ST)也称为【功能测试】,对整个系统全部测试以及第三方测试接口需要保证这写都没有问题.第三方:比如淘宝支持支付宝登陆等
集成测试和系统测试可以合并成系统集成测试,【接口测试,功能测试】=SIT阶段
⑨:验收测试阶段:UAT(验收环境,测试环境)产品经理对内
α:内部测试:产品经理和测试开发,坐在一起模拟用户场景测试,这是发现问题立马交给开发修复,测试人员需要跟进
β:外部测试:软件已经交给客户,客户这边的测试进行验收,此时发现问题,研发团队这边让客户统一收集问题,以邮件的方式抄送给相关的人,测试人员需要对这些问题进行验证,分等级,协助开发尽快修复

面试常见问题:

A:提问:你上一家公司的项目有哪些阶段,每个阶段的输入和输出是什么?
阶段:                                           输入                                                               输出
需求分析阶段                   测试开发产品开会讨论                                  需求规格说明书(srs)

概要设计阶段                   需求规格说明书(srs)                                  概要设计说明书
详细设计阶段                    概要设计说明书                                            详细设计说明书
编码阶段                           开发编写代码                                               整个代码包(war.jar.zip)
单元测试阶段                   对各自研发的模块进行代码测试                     单元测试报告
系统集成测试阶段            编写测试用例和执行测试用例                         系统集成测试报告
验收测试阶段                   产品和测试开发或客户验收测试                      验收测试报告

B:提问:软件上线后,客户发现问题,你应该怎么办
①:收集客户发现的问题
②:对这些问题在测试环境中操作一遍,看是否操作有误
③:如果测试环境没有问题,可能代码漏传,立马上传代码,再去看下是否有问题
④:如果确实存在问题,对这些问题进行分等级,(哪些是严重的,哪些是一般的)通知上级领导
⑤:一时半会修复不了,这些问题有点严重,看是否需要回滚代码(撤回上线代码)回滚代码需要注意数据备份
⑥:跟进这些问题,直到修复为止

五.W模型-对测试人员技能要求过高

六.H模型:重点  【项目的流程或者测试的流程】(接到一个项目您怎么开展)
1.项目和版本的区别:项目包含很多个版本
2.项目和产品的区别:先有项目后有产品(软件生命周期可以了解到:客户问题引入,可行性分析,招投标,立项,需求分析,开发测试,维护)
3.大致流程:
①:需求澄清(评审)     产品经理 ,测试,开发,运维等
②:概要设计HLD            测试了解需求
③:详细设计LLD            测试继续了解需求,基于项目周期输出测试计划
④:开发编写代码            测试人员根据需求编写测试用例和评审用例
⑤:开发把编写好的代码打成一个代码包,运维搭建测试环境,并将代码包部署到测试环境
⑥:   测试人员冒烟测试,根据用例执行sit测试,有bug提bug,交给开发修复,进行回归测试
⑦:所有的bug都已修复,回归测试都验证,并且都ok
⑧:输出一个测试总结报告,交给领导,领导会根据这个报告作出上线准备


4.进行细化
①:产品经理根据客户需求提炼出项目需求给到研发团队,阅读分析,有问题记录下来,这个时候,产品经理会开会通知,产品经理主讲,测试开发人员与会。听,然后提出疑问,问题。讨论这个是否合理,产品需要调整需求,最后会形成规格说明书(srs)
②:开发同时基于需求文档,编写概要设计说明HLD。测试了解需求,凭什么,测试也可以参加开发文档的评审
③:开发基于概要设计编写详细设计说明书LLD,测试继续深入了解需求,深入了解的目的,为了挖掘需求当中隐形,显示关联的,特殊的需求点
会基础项目的周期,TPM输出测试计划,测试范围,人员安排,时间资源等等)【你们公司的测试计划谁写的:测试经理,测试组长,测试骨干,你
④:开发人员编写代码,测试人员:根据需求编写测试用例,编写完成后进行用例评审,评审后可能需要修稿增删改,修改完成后进行保存,(1,发给领导,2.上传用例管理工具testlink 3.自己保存)

TE:测试工程师
TC:测试用例
testlink:用例管理工具

面试可能会遇到的问题:
C提问:
你们公司有哪几种用例评审?
组内评审:项目组内部成员,领导,测试,开发,运维,UI (一般最多的是这种)
交叉评审:我写的用例你来讲
会议评审:有可能客户会来参加

⑤.打包部署:运维搭建测试环境,开发人员把代码打成一个代码包,交给运维人员,运维将代码包部署到测试环境(基于Linux上, war.JAR.ZIP)包根据服务器来定,原为部署好了之后,通知测试人员可以进入测试阶段,给到ip地址,账号 密码,假如百度是我们的测试环境

D:提问:你们公司有几种环境?
测试环境:测试人员用的,内部环境
开发环境:开发人员联调自测,内部环境
线上环境:生产环境,真实环境
区分环境:测试环境下一单不会真实发货,在线上环境下单会发货

⑥:测试人员开始测试,编写了1000条测试用例
首先要进行冒烟测试,假如冒烟测试不通过,把版本打回给开发,之前发布的版本v1.0
开发修复好了之后V1.1打包部署,继续冒烟测试,冒烟测试通过,执行sit测试

什么叫冒烟测试?
(冒烟测试一般执行50条以内的用例)最先起源于硬件行业 电路板
软件上的定义:对主体功能的测试

什么是主体功能?
例子:登录成功是登录的主体功能
qq注册成功是qq注册功能的主体功能
支付成功是微信支付的主体功能



系统集成测试:又叫做全量测试,就是把1000用例全部执行一次,发现bug提交到bug管理工具(禅道)有可能发现自己用例漏写了,需要新增永烈
输出测试报告小结,(记录这一轮执行了多少用例,发现多少bug)

回归测试:(增量测试,用例数量的增加)
回归测试测试了哪些内容?
新增用例需要测试/修复的bug需要测试/冒烟测试/发现bug相关联模块需要测试
抽取全部用例的500用例测试,发现bug继续提bug,有可能发现自己的用例漏写了,需要新增用例
输出小结报告(记录这一轮执行了多少用例,发现多少bug)

回归测试一直做直到最后一轮所有回归测试没有问题,所有的bug都已修复,bug数为0,输出测试总结报告,发给上级领导,领导会根据这个报告来做上线准备

E提问:H模型中的sit:0/1中的1指的是什么?
表示有一个易用性的bug,不影响使用,需要把这个情况告知领导,可以留到下一个版本解决
F提问:你们公司一定要bug数为0才能上线吗?
不一定,一般致命,严重,一般的bug需要为0,如果有易用性的bug可以留到下一个版本,这个情况需要告知客户和领导,商定好修复时间
G提问:你们测试推出的标准是什么?
a.所有功能都已经实现,且符合需求规定的功能
b.提交到bug管理工具的bug都已验证
c.所有回归测试都ok,且致命,严重一般的bug都已通过,且关闭
d.输出测试总结报告以及其他文档(用例文档,bug,文档等等)
E提问:你们公司测试准入的标准是什么?
a.所有相关文档都已输出(需求文档,开发文档,用例文档,测试计划等)
b.开发编写好代码且通过了单元测试,研发的功能也符合需求文档
c.测试用例已评审通过
d.环境搭建好了,代码已部署到测试环境
e.冒烟测试通过

H总结:项目的流程【重点】工作的流程,测试流程
产品接到一个需求,进行分析提炼到项目需求,下发给项目组成员,我们拿到这个需求文档进行阅读,分析,记录一些问题,这时产品经理组织开一个评审会议,产品经理主讲,提出我们记录的问题进行讨论,产品经理进行调整最终会形成一个基线化文档,测试人员编写测试计划,开发编写代码,测试根据测试计划编写测试用例,进行评审等到运维把代码部署到测试环境中,首先进行冒烟测试,冒烟测试不通过,打回版本给开发,如果冒烟测试通过,进行sit系统集成测试,发现bug提bug,等开发修复好了之后进行回归测试,直到所有的bug全部修复,输出测试总结报告发给领导

七:敏捷开发模型:研发周期短,项目进行比较快,互联网公司多
八:增量开发模型:分为多个模块,按优先级研发
九.迭代开发模块:微信
十:测试的基本原则:
测试需要以需求为标准
测试需要测试软件和文档
测试对象

十一:测试活动的生命周期:
测试计划:之前已经了解需求文档,输出了需求规格说明书
测试分析与设计:之前测试计划已输出设计用例
测试实现与执行:测试用例已写好,且评审过了
测试资产归档:一般指app(配手机)

分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册