我的账户
啄木鸟学院

专注软件测试菁英教育

亲爱的游客,欢迎!

已有账号,请

如尚未注册?

ISTQB学习大纲(1)

[复制链接]
RHM 发表于 2020-3-25 10:38:14 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
第一章:软件测试基础
1. 引起软件缺陷的原因
人都会犯错误(error,mistake),因此人设计的代码或文档中会引入缺陷(defect, fault, bug);当存在缺陷的代码被执行时,系统可能无法实现期望功能或实现了未期望的功能,引起软件失效(failure)。

产生缺陷的原因:人们本身容易犯错误、时间压力、复杂的代码、复杂的系统架构、技术的革新、以及/或者许多系统之间的交互等。
失效也可能是由环境条件引起的:如:辐射、电磁场和污染等都有可能引起固件中的故障,或者由于硬件环境的改变而影响软件的执行。

2. 进行软件测试的原因:
可以减少软件系统在运行环境中的风险,
提高软件的质量,
为了满足合同或法律法规的要求,
为了满足行业标准的要求。

3. 软件质量特性:
功能、可靠性、可用性、可移植性、可维护性、效率

4. 测试和质量
通过测试发现的缺陷评估质量;
测试发现缺陷很少或没有,测试可以帮助树立对质量的信心;
合理的测试顺利通过,可降低系统存在的风险;
修改了缺陷则提升了质量;
分析缺陷及其原因可改进软件开放过程,反过来可提升以后产品质量。

测试是质量保证工作不可或缺的一部分。

5. 质量保证包括:
开发标准、培训和缺陷分析

6. 测试活动包括:
计划和控制,
选择测试条件、设计和执行测试用例,
检查测试结果,
评估出口准则,
报告测试过程及被测系统,
在一个测试阶段完成后要进行测试结束和总结工作,
同时也包括文档/代码的评审、执行静态分析。

7. 测试的目标:
发现缺陷,
增加对质量的信心,
为决策提供信息,
预防缺陷。

8. 不同的测试阶段考虑不同的测试目标:
软件生命周期早起的测试设计的思维过程和活动:可以避免将缺陷引入代码;
对文档的评审,并识别和解决问题:有助于防止代码中出现缺陷;
开发测试(组件测试、集成测试和系统测试):尽可能多的发现失效,从而识别和修正尽可能多的缺陷;
验收测试:确认系统是否按照预期工作,建立满足了需求的信心;
维护测试:验证开发过程中的变更是否引入新的缺陷;
运行测试:评估系统的特征,如可靠性或可用性等。

9.杀虫剂悖论
采用同样的测试用例多次重复进行测试,最后将不在能够发现新的缺陷。为了克服杀虫剂悖论,测试用例需要进行定期评审和修改,同时需要不断增加新的不同的测试用例来测试系统的不同部分,从而发现潜在的更多的缺陷。

10. 测试的7个原则:
测试显示存在缺陷(但不能证明系统不存在缺陷);
穷尽测试是不可行的;
测试尽早介入;
缺陷集群性;
杀虫剂悖论;
测试活动依赖于测试背景(如对安全关键的软件进行测试,跟对一般软件的测试是不一样的);
不存在缺陷(就是有用系统)的谬论(如果系统无法使用,或不能完成客户的需求和期望,发现和修改缺陷是没有任何意义的)。

11. 基本的测试过程:
测试计划和控制;
测试分析和设计;
测试实现和执行;
评估出口准则和报告;
测试结束活动。
以上活动逻辑上连续,但实际可能会重叠或同时进行;可适当剪裁。

12. 测试计划的主要活动是:
识别测试任务,
定义测试目标,
为了实现目标和任务确定必要的测试活动。

13. 测试控制是持续进行的活动(整个生命周期):
报告测试的状态,包括与计划的偏差;
采取必要措施以满足测试任务和目标。

14. 测试分析和设计阶段的主要任务:
评审测试依据(如需求、软件完整性级别(风险等级)、风险分析报告、系统架构、设计和接口说明);
评估测试依据和测试对象的可测性;
通过对测试项、规格说明、测试对象行为和结构的分析,识别测试条件并确定其优先级;
设计测试用例并确定优先级;
确定测试条件和测试用例所需要的测试数据;
规划测试环境的搭建和确定测试需要的基础设施和工具;
创建测试依据和测试用例间的双向可追踪性。

15. 测试实现和执行阶段的任务:
通过特定的顺序组织测试用例来完成测试规程和脚本的设计,并且包括测试执行所需的其他任何信息,以及测试环境的搭建和运行测试。

16. 评估出口准则和报告
主要任务:
按照测试计划中定义的测试出口准则检查测试日志;
评估是否需要进行更多的测试,或是否需要更改测试的出口准则;
为利益相关者提供一个测试总结报告。

17. 测试结束活动
进行测试结束活动的情况:
软件系统正式发布、
一个测试项目完成(或取消)、
达到一个里程碑或一个维护版本完成。

18. 测试结束活动的主要任务:
检查提交了哪些计划的可交付产品;
事件报告是否关闭、或对未关闭的时间报告提交变更需求;
记录系统的验收;
记录和归档测试件、测试环境和测试基础设备,以便以后的重复使用;
移交测试件到维护部门;
分析和记录所获得的经验教训,用于以后的项目和测试成熟度改进;
使用为测试成熟度的提高所收集的信息。

19. 从低到高定义不同级别的测试独立:
测试由软件本身的编写人员来执行;
测试由一个其他开发人员来执行(可能来自同一个开发小组);
测试由组织内的一个或多个其他小组成员(如独立的测试小组)或测试专家(如可用性和测试专家)来执行;
测试由来自其他组织或其他公司的成员来执行(如测试外包或其他外部组织的鉴定)。

20. 发现失效需要测试员具有:
好奇心,
专业的怀疑态度,
一双挑剔的眼睛,
对细节的关注,
与开发人员良好的沟通能力,
对常见的错误进行判断的经验。

21. 职业道德:
公共:测试工程师应当以公众利益为目标;
客户和雇主:在保持与公正利益一致的情况下,应注意满足客户和雇主的最高利益;
产品:产品发布版本符合最高的专业标准;
判断:维护职业判断的完整性和独立性;
管理:对软件测试合乎道德规范的管理;
专业:推进其专业的完整性和声誉;
同事:对同事持平等、互助、支持的态度,促进与开发人员的合作;
自我:参与终生职业实践的学习,并促进合乎道德的职业实践方法。




分享本篇文章给更多人:


63.9K
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝0

帖子23

发布主题
大家都在学
课堂讨论
一周热帖排行最近7x24小时热帖
关注我们
专注软件测试菁英教育

客服电话:17792550360

客服时间:9:00-21:00

卓目鸟学苑 - 专注软件测试菁英教育!( 陕ICP备20001493号-1 )

版权所有 © 西安菁英教育科技有限公司 2023-2026