one:
一。测试输入三要素:
1.测试环境, 2.测试对象, 3.测试工具
验证被测对象是否符合用户的需求或者验证预期结果与实际结果的差异
二。软件测试定义:
1.为发现错误而 执行程序 的过程
2.软件测试根据开发各阶段的规格说明和程序内部结构而精心设计的 测试用例(至少包含输入数据和预期输出结果),并利用这些用例运行程序,以及发现错误的过程
2.1软件开发有各阶段的
2.2(用例设计方法有黑(规格说明)有白(程序内部结构),不单一,结合)
2.3设计用例本质的不同就是设计数据
测试工具:
1.测试工具
项目管理工具qc(alm)(包括缺陷、用例、需求)
配置:JTRA\BUGFREE\TESTER
2.管理工具
需求管理工具、项目管理工具
配置管理工具
缺陷管理工具
用例管理工具
two:
一. 测试思路:证实,证伪,预防
1.方案(特定测试点,思路,方法(黑白等),工具)
2.测试用例:为了 特定目的 而设计的一组 测试输入、执行条件和预期输出。是执行测试的最小实体
用例应具有:步骤清晰、可操作性强、结果唯一、可重现性、可判定(预期结果唯一)、可代表的特点(前3个针对编写,后针对设计)
3.执行
4.缺陷:遗漏、过错、未达到、冗余(多余)、体验不好
二。软件研发生命周期以及各阶段做的事:
可行性分析-》需求分析-》设计-》编码-》测试-》运行与维护
解决的问题:为了描述软件开发过程中可能的回溯,尤其是维护阶段往往要经历上述各个阶段(从开始到结束做了什么,应该如何做)
1.可行性分析:经济、技术、市场
2.需求分析:确定做哪些功能,以及挖掘隐式或显示的功能而形成 需求规格说明书(SRS)(开发测试都参与)
3.设计(2种):
(总体)概要设计:是对模块分解
输出成果:概要设计说明书
详细设计:模块
输出成果:详细设计说明书
测试开始时间:测试贯穿软件研发的生命周期
4.编码:具体实现编码工作
5.测试(单元、集成、系统、验收):检验
6.运行与维护:
three
搭建测试环境
分类:(内)开发环境,测试环境(分有生产演练等)、(外)生产(用户)环境
特点:独立性(强调数据库的独立)、无毒、干净
four
软件危机:高成本低质量
软件工程学主要用来探讨软件研发过程和质量
目的:研发具有高质量低成本的软件
软件研发流程方式:个体方式-》团队-》公司(软件工程)
软件研发模型(2):
解决问题:指导整个软件开发流程,在实际中怎么开发,怎么开发成低成本高质量的软件
1.顺序:
2.迭代,增量:
一。瀑布模型(顺序)
优点:
1)为项目提供了按阶段划分的检查点
2)当前一阶段完成后,您只需要去关注后续阶段。
3)可在迭代模型中应用瀑布模型。
4)它提供了一个模板,这个模板使得分析、设计、编码、测试和支持的方法可以在该模板下有一个共同的指导。
缺点
1)各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量。
2)由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发风险。
3)通过过多的强制完成日期和里程碑来跟踪各个项目阶段。
4)瀑布模型的突出缺点是不适应用户需求的变化。
二。rup(统一软件开发过程)(增量、迭代)
优点:
1.在迭代的开发过程、
2.需求管理、
3.基于组件的体系结构、
4.可视化软件建模、
5.持续的软件质量验证
6.控制软件变更
特点:
1.风险优先处理
2.增量迭代的过程
3.以架构为中心,模块可扩展性好,接口要标准化
4.交付可运行软件
5.宏观上是一个并行的工作方式
测试越到后面老功能会:
1.引入自动化
2.回归测试
三。ipd(集成产品开发)
优点:
1、 产品研发周期显著缩短;
2、 产品成本降低;
3、 研发费用占总收入的比率降低,人均产出率大幅提高;
4、 产品质量普遍提高;
5、 花费在中途废止项目上的费用明显减少;
(可能问:v和w的区别)
软件测试模型(3):
1.v:左边是开发,右边测试
优点:1.分阶段,开发与测试一一对应
缺点:1.测试在编码后,只是测试源程序,没有反映测试贯穿全局
2.需求分析阶段隐藏的问题到验收测试才发现
3.只分了阶段,没有说具体阶段做的事
概要设计说明书(HLD)
详细设计说明书(LLD)
2.w(左边设计,右边执行)
优点:1.w是v的自然而然的发展,更早的介入到软件开发中,能尽早的发现缺陷进行修复。
2.测试与开发独立,各阶段分清具体做的事
3.测试伴随整个软件开发周期,测试对象不仅是程序,还有需求、功能、设计一样要测试
缺点:1.无法迭代
2.对技术要求高,实践困难
3.h(不关心开发,只关心测试)
优点:1.独立的模块
2.测试与开发是并行
3.测试贯穿整个软件开发的生命周期
注意:
1.测试前应准备好:测试数据和与之对应的预期结果,依赖一些东西来测
2.测试输入数据包括:合理的输入条件 与 不合理的输入条件
3.程序提交测试后,应由专门测试人员进行测试,不能自己开发自己测
five
(面试可能问:测试流程由哪几个阶段组成?或者问 流程的前中后期分别是什么?100%)
一. 软件测试流程(4阶段):**************************************************************************************
软件测试流程
1.计划与控制
(需求确定之后再进入测试计划写作)
制定测试计划书(测试经理)(现阶段的自己只能说是参与拟订)(测试计划一定要确保可以执行,在整个软件测试过程中要不断完善与更新,以便来指导整个软件测试过程有效开展)人员分配、风险控制
依托项目计划-》
测试计划包括:测试范围、测试对象、背景、人力资源、环境、网络、风险、进度计划安排表、测试里程碑、时间
2.分析与设计
(进行需求分析 提取测试需求,通过测试需求来写测试方案、测试用例、测试数据的设计) (公司有些把23合在一起,设计和执行)
3.实现与执行
实现:用例的实现
执行:用例的执行(转换成脚本)(执行-动态测试)
4.评估与报告
测试过程进行评估达没达到标准
根据过程进行产品质量 的评估
评估完后形成测试报告
(测试组长形成,经理看、用户看)报告:明确的结论、数据的支撑
缺陷的统计与分析
开发与测试的关系?
软件质量
定义:
软件产品满足 明确 或 隐含 的需求的能力 相关的特征和特性总和*********************************
描述:1.质量即符合需求 2.质量即适用性
特点:1.软件产品满足用户需要的程度
2.软件各种属性的组合程度
3.用户对软件产品的综合反映程度
4.软件在使用过程中,满足用户要求的程度
six********************
软件质量(产品和过程):
1.产品质量
1.用户(外部质量):
1.验收质量:软件研发的产品和用户(明确)需求符合程度
2.使用质量:软件研发的产品和用户(显示和隐式)需求符合程度
2.生产者(内部质量):软件研发的产品和需求规格说明书(SRS)的符合程度
都是质检,都是为了质量
SQA(质量保证Software QualityAssurance)(专注过程质量):涉及到监督:在过程中监督,最终都是为了质量********************
QC(质量控制)(专注产品质量):保障产品质量
质量模型(产品)
功能测试是软件质量的基础,性能测试是提升质量,只有两个做好了,软件质量才是好的
环境因素:功能测试(宽松的环境下),性能测试(苛刻的环境)
iso9126(6大特27子特)(国际标准)
6大特性:
1.功能性:
1.适合性:提供了相应的功能
2.准确性:正确
3.互操作性:产品与产品之间交互数据的能力
4.保密安全性:禁止未授权的用户访问
2.可靠性(稳定否)
1.成熟性:防止内部错误导致软件失效的能力
2.容错性:软件出现故障,自我处理能力
3.易恢复性:失效情况下的恢复能力
3.易用性
1.易理解性:
2.易学性:
3.易操作性:
4.易吸引性:
4.效率(尽可能用短的时间消耗少的资源来响应)
1.时间特性:平均事务响应时间,吞吐率,
2.资源利用性:CPU 内存 磁盘 IO 网络带宽 队列 共享内存(服务器消耗的资源)
5.可移植
1.易分析性:分析定位问题的难易程度?
2.易改变性:软件产品使指定的修改可以被实现的能力
3.稳定性:防止意外修改导致程序失效
4.易?测试性:使已修改软件能被确认的能力
6.可维护
1.适应性:适应不同平台
2.易安装性:被安装的能力
3.共存性:
4.易替换性
ISO25010
单独把安全、可操作提出来
1.功能、兼容、安全单独立出来
2.更多在用户的角度,去除了用户不关心的
maccall
见图
下面接测试基础2