鱼鳞病

注册

 

发新话题 回复该主题

老司机倾囊相授,小白也能看懂的软件测试框 [复制链接]

1#
◆◆软件相关知识◆◆1、什么是软件?软件=程序(源程序,目的程序)+数据+文档备注:软件测试对象包括以上三部分2、IT技术部门结构组成1)产品部:用户需求文档(预期结果),界面原型图2)开发部:编码,得到程序(源程序,目的程序)(实际结果)3)测试部:比对实际结果与预期结果之间的差别(得到程序的bug、文档的bug、数据的bug)4)运维部:后期运行上线中涉及的数据维护、技术问题等。3、软件的生命周期(软件是怎么做出来的?)1)项目计划2)需求(需求规格说明书SRS)3)设计(概要设计说明书+详细设计说明书)4)编码(源程序,目的程序)5)测试(bug)6)运行上线(测试从需求阶段就开始介入)(瀑布模型中测试在编码之后介入)4、软件的项目组成人员1)项目经理2)需求分析人员3)设计人员4)编码人员5)测试人员6)运维人员7)配置管理人员:配置项=代码+文档,整个软件研发过程中所有交付件。8)SQA:软件质量保障工程师职责:a)指定规范,流程b)监督项目组成人员按照流程工作,若违反,提出NC项(不符合项)c)检测评审项目成果,尤其是测试交付件5、软件研发模型/流程1)瀑布模型%需求——%设计——%编码——%测试——投入使用优点:需求稳定,重复工作少,质量高缺点:项目周期长,成本高2)螺旋模型50%需求——50%设计——50%编码——50%测试——首版本上线版本迭代,迭代周期4-8个月3)敏捷模型(小版本迭代)20%需求——20%设计——20%编码——20%测试——首版本上线版本迭代,平均迭代周期1个月左右优点:项目周期短,小版本迭代,快速上线缺点:需求不稳定,重复工作多,质量下降6、软件缺陷引入的原因1)需求:50%~60%不重视需求导致频繁变更2)设计:20%3)编码:15%4)其他:5%7、软件缺陷的分类1)遗漏:软件未实现需求中明确说明的部分2)错误:软件中的实际效果与需求中描述的不一致3)额外实现:软件实现了需求中未明确说明的部分◆◆测试基础◆◆1、软件测试的定义使用人工或自动化的手段来运行软件的过程,其目的在于检测他是否满足规定的需求,或是弄清楚预期结果与实际结果之间的差别2、软件测试的目的1)发现错误有些错误偶发,有些错误藏很深2)检测是否满足功能需求、性能需求、可靠性需求等3)软件测试不能证明软件不存在缺陷3、软件测试的原则1)所有的测试工作都应该追溯到用户需求2)尽早启动测试工作,需求阶段就介入3)穷尽测试是不可能的4)测试是有风险的遗漏5)并非所有的缺陷都值得修复6)杀虫剂怪事(测试用例对缺陷存在免疫能力)7)帕累托法则,28法则80%缺陷存在于20%的核心业务模块中8)Bug的群集效应发现的缺陷越多,说明存在的缺陷越多A25个bugB6个bug增强测试谁9)前进两步,后退一步

V1.=fail+4passV1.01回归测试(1)验证缺陷修复是否正确(执行条用例)(2)重复测试——完全重复测试(工作量巨大,考虑使用自动化)——选择重复测试(主要选择相关功能进行重复测试)◆◆测试方法◆◆1、根据测试技术划分(根据是否

分享 转发
TOP
发新话题 回复该主题