1.测试定义:(找bug,找缺陷)
使用人工或自动的手段来运行或者测试某个系统的过程;
目的在于检验他是否满足规定的需求;
弄清预期结果和实际结果的差别。
2.软件测试的目的:
以最小的人力,物力和时间,找出软件中潜在的错误和缺陷。
3.软件测试的原则:
证明软件中存在的缺陷;
不能进行穷尽测试;
测试应尽早介入;
28原则;
不存在缺陷缪论;(所有的程序都存在缺陷)
妥善保存一切文档。
4.测试标准:(百度)
国际标准:ISO25010
国内标准:GBT18905
5.测试基本要求:
外观界面测试;易用测试;兼容性测试;安全性测试;性能测试;功能测试
6.测试工作流程:
需求分析(阅读需求文档,分析需求的点,参与需求评审,快速熟悉项目);
测试计划和测试方案
(测试计划:测试整个项目的总体规划
测试范围,进度安排,人力物力安排,整体测试策略,风险评估,风险规避
测试方案:被测试的目标,选取什么样的测试工具,测试方法,测试重点);
测试用例设计;
测试用例的执行;
评估阶段 测试报告。
7.开发模型:
1>瀑布模型:问题定义--可行性研究--需求分析--软件设计--编码--测试--维护
①特点:文档驱动模型
阶段间具有依赖性和顺序性;
质量保证的观点
推迟实现。
②优点:
为项目提供了按阶段划分的检查点;
可在迭代模型中应用瀑布模型;
当前阶段完成后,只需要关注后续阶段。
缺点:
不适用于需求模糊或经常变动的系统;
用户较长时间未获得可供使用的系统,会降低用户的信任;
由于开销的逐步升级问题,它不希望存在早期阶段的反馈;
在一个系统完成以前,他无法预测一个新系统引入一个机构的影响。
快速原型
特点:快速建立起来的可以在计算机运行的程序
优点:克服瀑布模型的缺点,减少由于软件需求不明确带来的开发风险,适合预先不能确切定义需求的软件系统的开发
缺点:所选用的开发技术和工具不一定符合主流的发展;快速建立起来的系统结构加上连续的修改可能导致产品质量低下;使用前提是要有一个展示性的产品原型,一定程度上可能会限制开发人员的创新。
增量模型(可以并发进行开发)
把瀑布模型的顺序特征与快速原型法的迭代特征相结合,将软件看做一系列相互联系的增量,在开发过程中各次迭代中,每次完成其中一个增量
避免瀑布模型的缺点
其他开发模型:
螺旋开发模型
迭代开发模型:不能并行开发
敏捷开发模型(快速原型的一种)
测试模型
V模型
优点:
每个阶段清晰明了,便于控制开发的每一个过程,既包含单元测试,又包括系统测试
缺点:
测试介入较晚,对于前期的一些缺陷无法发现和修改,测试和开发串行,总时长教长
W模型
优点:
测试伴随软件的整个生命周期,测试与开发师并行独立进行
缺点:
对需求和测试技术要求高,适用于大中型企业
测试的分类(XMIND)