20171120测试笔记
一,什么是测试?
1.1 测试的主要内容就是debug,需要多方位的考虑程序的问题
1.2 测试的定义
测试包括所有生命周期活动的过程,由景甜的也有动态的.设计计划准备和对软件及其相关工作产品的评估
1.3广义的软件测试
白盒测试/黑盒测试<-动态测试<-软件测试->静态测试->人工检查/自动测试
1.4软件测试的部分
单元测试和集成测试,系统测试,验收测试,维护测试,运行测试,入网测试,
1.5调试和测试区别
调试是建设性的,测试是破坏性的.
1.6软件测试和质量
软件质量模型ISO9126(一个标准软件需要具备的性质)
-功能性:适合性,准确性,互操作性,保密安全性,功能性的依从性
外部 -可靠性:成熟性,容错性,易恢复性,可靠性的依从性
和内部--易用性:易理解性,易学性,已操作性,吸引性,易用性的依从性
质量 -效率:时间特性,资源利用性效率依从性
-维护性:易分析性,易改变形,稳定性,易测试性,维护性的依从性
-可移植性:适应性,已安装性,共存性,易替代性,可移植性的依从性
保密性安全性:权限,加密方式
二,测试需要学什么?
2.1 看懂代码
2.2 数据库,计算机网络协议
2.3 自动化,代码编写能力
2.4 理解软件测试,需要不断地积累
2.5 安全测试工程师,需要对计算机系统,编程语言,数据库(关系型,非关系型),"大数据"
三,课程内容
3.1 软件测试基础
3.1.1 为什么测试?
缺陷定位:找到问题的根源,从最根本的地方解决问题.
.通过具体的列子描述软件中的缺陷会以什么形式损害个人,环境或者公司利益
..使用,不同环境下的使用情况,以及不同情况下的使用极限,使用年限,非正常情况下.
.区分引起缺陷的根本原因及其影响
人的因数
..人总是容易犯错的
..开发人员的态度
..沟通的问题
..需求的频繁变更
..管理上的缺陷
..进度压力大
..不重视开发文档...
.通过举例的方式说明为什么要测试
..软件测试是软件质量保证的一个重要环节
..软件测试可以降低风险
..系统或者产品通过软件测试发现其中的缺陷,对缺陷修改可以提高软件质量
..软件测试也可以为了满足合同或者法律法规的要求,或者满足行业的标准
.描述为什么测试是质量保证的一部分,通过举例说明测试如何来提高软件的质量
.理解术语错误,缺陷,故障,失效的概念以及相应的定义
软件测试角色定义
..软件测试可以为项目相关人员提供信息,帮助他们作为合理的决定
..软件测试得到的数据和质量,可以帮助进行测试过程和开发进程的改进
..假如测试过程中没有发现或者发现很少的缺陷,可以提高对软件系统的信心
质量保证
..预防缺陷的策略,关注过程的管理和控制
..通过监控软件开发过程来保证产品质量
..保证软件和开发过程符合相应标准和规范
..保证软件产品,软件过程中存在的问题得到处理,必要时将问题反映给高级管理者
..确保项目组指定的计划,标准和规范是和项目需要,同时满足评审和审计
软件测试
..尽可能多的发现软件系统中的问题
术语的关系
..错误=>缺陷=>失效/失败<=周围环境/使用环境
3.1.2 测试成本
测试人员,测试设备,测试环境,办公场所,测试过程......
.测试成本的影响因数
软件开发过程的成熟度
需求是否经常变更
软件测试过程成熟度
测试环境的质量&可用性
软件质量和软件可测性
员工的素质
软件的质量目标
.什么时候结束?
当时间资源和质量之间的平衡,结束
3.2 软件生命周期中的测试
3.3 静态测试
3.4 动态分析--测试设计技术
3.5 测试管理
3.6 测试工具
一,什么是测试?
1.1 测试的主要内容就是debug,需要多方位的考虑程序的问题
1.2 测试的定义
测试包括所有生命周期活动的过程,由景甜的也有动态的.设计计划准备和对软件及其相关工作产品的评估
1.3广义的软件测试
白盒测试/黑盒测试<-动态测试<-软件测试->静态测试->人工检查/自动测试
1.4软件测试的部分
单元测试和集成测试,系统测试,验收测试,维护测试,运行测试,入网测试,
1.5调试和测试区别
调试是建设性的,测试是破坏性的.
1.6软件测试和质量
软件质量模型ISO9126(一个标准软件需要具备的性质)
-功能性:适合性,准确性,互操作性,保密安全性,功能性的依从性
外部 -可靠性:成熟性,容错性,易恢复性,可靠性的依从性
和内部--易用性:易理解性,易学性,已操作性,吸引性,易用性的依从性
质量 -效率:时间特性,资源利用性效率依从性
-维护性:易分析性,易改变形,稳定性,易测试性,维护性的依从性
-可移植性:适应性,已安装性,共存性,易替代性,可移植性的依从性
保密性安全性:权限,加密方式
二,测试需要学什么?
2.1 看懂代码
2.2 数据库,计算机网络协议
2.3 自动化,代码编写能力
2.4 理解软件测试,需要不断地积累
2.5 安全测试工程师,需要对计算机系统,编程语言,数据库(关系型,非关系型),"大数据"
三,课程内容
3.1 软件测试基础
3.1.1 为什么测试?
缺陷定位:找到问题的根源,从最根本的地方解决问题.
.通过具体的列子描述软件中的缺陷会以什么形式损害个人,环境或者公司利益
..使用,不同环境下的使用情况,以及不同情况下的使用极限,使用年限,非正常情况下.
.区分引起缺陷的根本原因及其影响
人的因数
..人总是容易犯错的
..开发人员的态度
..沟通的问题
..需求的频繁变更
..管理上的缺陷
..进度压力大
..不重视开发文档...
.通过举例的方式说明为什么要测试
..软件测试是软件质量保证的一个重要环节
..软件测试可以降低风险
..系统或者产品通过软件测试发现其中的缺陷,对缺陷修改可以提高软件质量
..软件测试也可以为了满足合同或者法律法规的要求,或者满足行业的标准
.描述为什么测试是质量保证的一部分,通过举例说明测试如何来提高软件的质量
.理解术语错误,缺陷,故障,失效的概念以及相应的定义
软件测试角色定义
..软件测试可以为项目相关人员提供信息,帮助他们作为合理的决定
..软件测试得到的数据和质量,可以帮助进行测试过程和开发进程的改进
..假如测试过程中没有发现或者发现很少的缺陷,可以提高对软件系统的信心
质量保证
..预防缺陷的策略,关注过程的管理和控制
..通过监控软件开发过程来保证产品质量
..保证软件和开发过程符合相应标准和规范
..保证软件产品,软件过程中存在的问题得到处理,必要时将问题反映给高级管理者
..确保项目组指定的计划,标准和规范是和项目需要,同时满足评审和审计
软件测试
..尽可能多的发现软件系统中的问题
术语的关系
..错误=>缺陷=>失效/失败<=周围环境/使用环境
3.1.2 测试成本
测试人员,测试设备,测试环境,办公场所,测试过程......
.测试成本的影响因数
软件开发过程的成熟度
需求是否经常变更
软件测试过程成熟度
测试环境的质量&可用性
软件质量和软件可测性
员工的素质
软件的质量目标
.什么时候结束?
当时间资源和质量之间的平衡,结束
3.2 软件生命周期中的测试
3.3 静态测试
3.4 动态分析--测试设计技术
3.5 测试管理
3.6 测试工具