- 版本记录
- 项目说明(项目的背景,项目的目的)
- 数据预期(需求上线后用户达到什么样的数据)
- 原型图(墨刀)ui图(蓝湖)
- 模块说明
- 埋点说明(统计用户行为,比如点击量,曝光率)
- 查看历史类似的需求文档
- 参加需求会,讨论会,评审会
- 咨询相关模块测试人员
- 召集相关人员进行讨论
客户提出要求,需求人员把客户的要求整理成需求文档,开发人员根据需求文档进行开发,测试人员根据分析需求编写测试用例,之后,测试人员进行测试工作,存在问题提交bug单,开发人员修改问题,测试人员进行复测,直到所有的需求均没有问题
(所有bug关闭),项目提交给客户,项目结束。
软件测试流程:测试经理把需求任务分配给对应模块的测试人员,测试人员接到需求后,会对该需求进行评审,评审需求规则是否存在问题,没有问题后,测试人员先对最终确认下来的需求文档进行了解和分析,然后根据需求文档所有文档规则编写测试用例,并进行测试用例评审,评审通过后,测试人员正式开始根据测试用例进行测试,存在问题的测试点提交缺陷单(bug单)给开发,开发进行修复后测试人员进行复测,直到所有测试用例执行完毕,最终编写相关测试报告,该项目的测试工作结束。
Bug处理流程测试人员提交缺陷到缺陷管理系统给对应开发人员,形成缺陷单,状态为<新建>状态,开发人员处理缺陷,并把缺陷单修改为<已修改>状态,测试人员进行复测如果有问题,则状态变更为<重新打开>,没有问题后把所有的缺陷单状态改为<关闭>状态。
Bug单的状态:<新建> <已修改> <重新打开> <关闭>
软件测试的定义:对于软件而言,测试是通过人工或者自动化的检测方式,检测被测对象是否满足用户需求,或弄清预期效果与实践效果之间的差异的活动。
软件测试的目的:(1)发现被测对象与用户需求之间的差异,即缺陷。(与需求有冲突的都叫缺陷,即bug)
(2)通过测试活动发现并解决缺陷,增加人们对软件质量的信心(保证软件的质量交到用户手里可以正常 *** 作使用)。
(3)通过测试活动了解被测对象的质量状况,为决策提供数据依据(决策被测对象是否符合用户需求)。
通过测试活动积累经验,预防缺陷出现,降低产品失败风险。
软件测试原则:- 测试证明软件存在缺陷
- 不可能执行穷尽测试
- 测试应尽早启动、尽早介入
- 缺陷存在群集现象
- 杀虫剂谬论
- 不同的测试活动依赖不同的测试背景
- 不存在缺陷的谬论
1、保证程序与相应的需求文档功能要求一致
2、发现软件中的缺陷
3、确保软件做必要的事情(确保程序作了它该做的事情)(即保证系统的合理性)
4、明确系统在失败前可以让系统正常运行到何种程度(系统或服务器临近崩溃之前系统能正常运行到哪一步)
5、明确发给用户的系统中有哪些风险
比如说权限风险(相机、相册、麦克风等),如果产品没有经过用户同意私自使用相机权限,那告他们一告一个准
软件测试的对象不同的研发阶段,软件测试的对象是不尽相同的。
在需求设计阶段,原始需求是测试工程师的测试对象,通过对需求的检查,发现需求的正确性、歧义性、完整性,一致性等方面的问题。
在产品开发阶段,测试工程师的主要进行的是单元、集成、系统方面的测试。
在系统的验收阶段,测试 程师主要是对系统测试中的主功能方面的测试。
测试计划包含那些内容- 测试需求
- 排期(开发排期,测试排期)
- 测试人员
- 测试方法(功能测试,接口测试,自动化测试,性能测试,安全测试,兼容测试)
- 测试目的
- 等价类
- 有效等价类
- 无效等价类
- 边界值
- 上点
- 内点
- 离点
- 因果图
- 条件与条件之间的关系
- 且,或
- 因果图表--->生成测试用例
- 条件与条件之间的关系
- 错误分析法
- 依据工作的经验进行判断,编写测试用例方法
- 场景设计法
- 基本流
- 又被称之为主流程,程序都在正确的情况下运行
- 备选流
- 业务的分支,有两种情况,一种是回归到基本流,另外一种是直接结束用例
- 基本流
制定测试计划 2、设计测试用例 3、实施软件测试 4、提交缺陷单 5、测试报告(测试总结) 6、版本发布
什么算是大项目开发时间长,功能变动较大,逻辑较为复杂
回滚指的是程序或数据处理错误,将程序或数据恢复到上一次正确状态的行为。回滚包括程序回滚和数据回滚等类型。
项目经理负责,整个项目的分配以及排期,通常发起项目会议时,产品、测试、开发都要在场
产品经理产品经理工作内容包含需求收集,需求分析,需求落地,项目跟踪,项目上线,数据跟踪
开发人员分为前端开发和后端开发
测试工程师检查软件有没有缺陷(Bug),测试软件是否具有稳定性(Robustness)、安全性、易 *** 作性等性能,写出相应的测试规范和测试用例的专门工作人员
设计分为ui和交互
运营互联网运营要对用户群体进行有目的的组织和管理,增加用户粘性
DBA数据库管理员
人事全称人力资源管理,又称人事。人事管理是为实现一定的目标,对所属工作人员进行选拔、使用、培养、考核、奖惩等一系列的管理活动。
开发环境开发同学开发时使用的环境
测试环境也就是我们测试同学干活的环境,一般会由测试同学自己来部署,然后在此环境进行测试
预发布环境测试环境到生产环境的过渡。测试环境可能会受到一些限制,一些流程或者数据没有测试到,就可以在预发布环境进行验证,从而保证产品上线质量。
生产环境即线上环境,用户使用的环境。由特定人员来维护,一般人没有权限去修改。
另外,还有个灰度发布,发生在预发布环境之后,生产环境之前。
测试流程时间节点及产物编写case——测试
case review——测试组内
case 评审——产品、研发、测试
测试报告——每日测试进度、一轮测试
完成、项目完成后的Bug数及等级汇报
测试通过——测试
上线跟进——测试、研发
线上验证——测试
怎么保证软件质量首先从需求阶段,充分理解需求,与产品尽量细节上的沟通,然后在编写测试用例时,进行组内和组外评审, 完善测试用例,然后严格按照测试用例进行执行,最后编写测试报告
瀑布模型:
项目计划、需求分析、软件设计、程序开发、软件测试、集成维护
优点:为项目提供了按阶段划分的检查点,里程碑清晰
缺点:难以适应需求的频繁变化
V模型:需求分析、概要设计、详细设计、软件编码、单元测试、集成测试、系统测试、验收测试
优点:1.既由底层测试又有高层测试
2.将开发阶段清楚的表现出来,便于控制开发过程,当所有阶段都结束时,软件开发就结束了
缺点:1.由于它的顺序性,当编码完成后,正式进入测试时,这时发现的一些bug可能不容易找到其根源,并且代码修改起来很困难
2.实际中,由于需求变更很大,导致要重复变更需求、设计、编码、测试,返工量大
W模型:优点:1.将测试贯穿到整个软件的生命周期中,切除了代码要测试,需求、设计等都要测试
2.更早的介入到软件开发中,能尽早的发现缺陷进行修复
3.测试与开发独立起来,并与开发并行
缺点:1.对有些项目,开发过程中根本没有文档产生,故W模型无法使用
- 对于需求和测试技术要求很高,实践起来很困难
更强调程序员团队与业务专家之间的紧密协作、面对面的沟通(认为比书面的文档更有效)、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重软件开发过程中人的作用。
TDD:测试驱动开发
冒烟测试:BVT测试、
灰盒测试缺点:不适用于简单的系统
对测试人员的要求比黑盒测试高
1.非正式的验收测试
а测试(alpha)内部
软件开发公司组织内部人员模拟各类用户行为对即将上市的产品进行测试。
ß测试(beta)外部
软件开发公司组织各方面的的典型客户在日常工作中实际使用,并要求用户报告异常情况、提出改进意见,然后公司再进行完善。
2.正式的验收测试有正规的测试过程,需要制定测试计划、定义测试方案、选择测试用例,进行测试,结果提交。着重考虑软件是否满足合同规定的所有功能和性能,文档资料是否完整、准确,人机界面和其他方面。
为什么选择软件测试成就感:
可以找出来很多优秀的bug
薪资高:
入行之后可以拿到8k以上的薪资(一线城市)
门槛低:
相对于其他IT岗入门比较简单,只要功能测试就可以做这份工作
发展好:
这个行业完全是看技术能力的
锻炼沟通:
这个工作需要和产品、开发、UI沟通
锻炼思维:
这个需要站在不同的角度去思考
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)