测试工程师知识点
测试工程师知识点总结
1、软件质量保证:标准、规范、体系、实施
2、软件基础测试(软件开发过程,软件的质量保证,理解软件测试,测试分类);软件测试过程(软件测试计划,软件测试设计,软件测试执行);软件爱你测试工具(功能测试工具,性能测试工具)
3、软件的定义:略。
4、软件的分类:系统软件、应用软件、Web应用软件、工程和科学软件、嵌入式软件、产品线软件、人工智能软件
5、 软件危机的产生原因:客观:软件本身特点(逻辑部件,规模庞大);主观:不正确的
开发方法(忽视需求分析,软件开发=程序编写,轻视软件维护)
6、软件危机的解决途径:组织管理(工程项目管理方法);技术措施(软件开发技术与方法,软件工具)
7、软件工程是一汇总层次化的技术
8、软件工程三要素:方法、工具、过程
9、软件质量保证的目的(SQA):使软件过程对于管理人员来说是可见的
10、全面质量管理TMQ的核心思想:全员性(全员参与质量管理);全过程性(管理好质量形成的全过程);全面性(管理好质量涉及到的各个要素)
11、软件质量保证的目标:以独立审查的方式,从第三方的角度监控软件开发任务的执行
12、软件质量保证向管理者提供对软件过程进行全面监控的手段,使软件过程对于管理人员来说是可见的
13、软件质量保证的策略:以检测为重,以过程管理为重,以新产品开发为重
14、软件质量保证的主要任务:SQA审计评审,SQA报告,处理不符合问题
15、软件测试的定义:软件测试是为了发现错误而执行程序的过程
16、强调:测试、测试用例、测试步骤
17、软件的生命周期:制定计划、需求分析定义、软件设计、程序编码、软件测试、软件运行、软件维护、软件停用
18、软件测试技术分类:是否执行(静态测试,动态测试);用力的设计方法(黑盒测试,白盒测试);是否采用面向对象技术(传统测试,面向对象测试)
19、软件测试模型:V、W、H、X、前置模型
20、V模型:特点:瀑布模型的变种,反映了测试活动与分析和设计的关系,测试策略包括底层测试和高层测试;局限性:主要针对程序进行测试寻找错误,而需求分析、系统设计阶段隐藏的问题一直到后期的系统测试,验收测试才被发现,把测试的过程作为在需求分析、概要设计、详细设计及编码之后的一个阶段
21、W模型:特点:W模型由两个V字模型做成,分别代表测试与开发过程,W模型强调,测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、功能和设计同样要测试,测试与开发室同步进行的,测试与开发室同步进行的,有利于今早的发现问题;局限性:把软件的开发视为需求、设计、编码等一系列的串行活动,软件开发和测试保持一种线性的前后关系,需要有严格的指令表示上一个阶段完全结束,才可以正式开始下一个阶段,无法支持迭代开发模型
22、H模型:特点:H模型将测试活动完全独立出来,形成一个完全独立的流程,贯穿于整个产品周期,与其他流程并发的进行,尽早准备,尽早执行,测试准备阶段与测试执行分离,有利于资源调配、减低成本,提高效率,充分体现测试过程的复杂性。
23、X模型:特点:X模型的左边描述的是针对单独程序片段所进行的相互分离的编码和测试,此后,将进行频繁的交换,通过集成最终合成为可执行的程序,W模型还定位了探索性测试,这是不进行是先计划的特殊类型的测试,这一方式往往能帮助有经验的测试人员在测试计划之外发现更多的软件错误;局限性:提出了测试设计,却没有指出在软件测试的各个阶段都应该进行测试设计,过于关注低级别即程序级别的行为,而没有抽象成一个系统的模型,可能对测试造成人力、物力和财力的浪费,对测试人员的熟练程度要求比较高。
24、前置模型:特点:前置测试模型是将测试和开发紧密结合的模型,开发和测试相结合,对每一个交付内容进行测试,让验收、测试和技术测试保持相互独立,反复交替的开发和测试,引入新的测试理念。
25、测试模型的比较:
V模型:强调整个软件项目开发需要经历若干个测试级别,与开发阶段对应,没有指出对需求、设计进行测试
W模型:强调测试计划等工作的先行和对需求和设计的测试,没有专门针对测试流程予以说明
H模型:表现了测试是独立的,每对一个测试细节都有一个独立的操作流程,只要测试前提具备,就可测试
X模型:提出了测试设计,没有指出在软件测试各个阶段都应进行测试设计
前置模型:前置测试模型将开发和测试的生命周期整合在一起,伴随项目开发生命周期每个关键行为
26、软件测试策略:在一定的的软件测试标准、测试规范的指导下,依据测试项目的特定环境约束而规定的软件测试的原则、方式、方法的集合
27、软件测试规范:规范是对项目软件的一份指导性文件,对软件测试过程中所涉及到的测试理论、测试类型、测试方法、测试标准、测试流程以及软件产品开发单位所承担的职责进行总体规范,以有效保证软件产品的质量
28、一般从一下的软件测试过程进行规范:测试计划,主要测试需求分析;测试设计,依据测试需求,分析并选择测试用例,获取数据、进行批判;测试执行:执行测试,进行判断;测试总结:整理、分析护具、效果分析
29、测试文档内容:测试计划,测试说明,测试报告
30、测试计划:测试计划描述测试活动的范围、方法、资源和进度。它规定被测试的项、被测试的特性、应完成的测试任务、担任各项工作的人员职责以及与本计划有关的风险等
31、测试说明:测试设计说明,测试用例说明,测试规程说明
32、测试报告:测试项传递报告,测试日志,测试时间报告,测试总结报告
34、CMM软件能力成熟度模型
35、CMMI能力成熟度集成模型
36、软件测试的分类:
是否被执行:静态测试,动态测试
是否关注软件结构:白盒测试,黑盒测试
基于测试的不同阶段:单元测试,集成测试,系统测试,验收测试,回归测试,Alpha测试,Beta测试
37、静态测试:不执行程序代码而寻找代码中可能存在的错误或评估程序代码的过程
38、静态测试的特点:静态测试不必动态的执行程序,也就是不必进行测试用例设计和结果判读等工作;静态测试可以由人手工方式进行,充分发挥人的优势,行之有效;静态测试实施不需要特别的条件,容易展开
39、静态测试技术:人工完成(代码审查,代码走查,桌面检查,技术评审);由软件工具自动进行(静态结构分析);代码质量度量
40、代码审查:工作步骤(预先作一定的准备工作,然后举行会议进行讨论),代码审查的内容(检查代码对标准的遵循、可读性,检查代码和设计的一致性,检查代码的逻辑表达的正确性,检查代码结构的合理性),代码审查组(通常由四人组成,其中一人为组长,根据测试的组织方式不同,代码审查小组组成可以调节,但组长角色不能改动),代码审查的步骤(准备,程序阅读,审查会,跟踪及报告)
41、代码走查:代码走查的过程(与代码审查过程相似,先把材料交给每个小组成员,让他们认真研究程序,然后再召开代码走查会),代码走查会议的内容(用测试用例沿程序逻辑走一遍,并由测试人员讲述程序执行过程,在纸上或黑板上见识程序状态),代码走查组(代码走查组以小组方式进行,代码走查组包括组长、秘书、测试人员、设计人员),测试用例在代码走查中的作用(代码走查中,测试用例并不是关键,测试用例是作为换衣程序逻辑错误与计算错误的启发点),缺点(代码走查使用测试用例启发检测错误,人们注意力会相对集中在随测试用例游历的程序逻辑路径上,不如代码审查检查的范围广,错误覆盖全面)
42、桌面检查:缺点(第一,由于心理上的原因,容易对自己的程序的偏爱,没有发现错误的欲望。第二,由于人的思维定势,有些习惯性的错误自己不易发现,第三,如果根本对功能理解错了,自己不易纠正)
43、技术评审:综合运用走查和审查技术,逐页、逐节地检查软件开发前期需求分析和设计的文档,对软件的需求,设计结构等方面提出问题
44、静态结构分析:(1)检查函数的调用关系是否正确(2)是否存在孤立的函数没有被调用(3)明确函数被调用的频繁度,对调用频繁的函数可以重点检查
45、代码质量度量:Line复杂度(以代码的行数作为计算的基准),Helstead复杂度(以程序中使用到的运算符与运算元数量作为技术目标),McCabe复杂度(实质上是对程序拓扑结构的复杂性的度量)
46、静态测试的内容:需求定义、测试文档、源代码的静态测试
47、动态测试的步骤:单元测试(对软件中的基本组成单位进行测试,检查基本组成单位的正确性),集成测试(在软件系统集成过程中所进行的测试,检查单位之间结构是否准确),系统测试(对已经集成好的软件系统进行彻底的测试,以验证软件系统的正确性和性能等是否满足规定),验收测试(软件投入使用之前的最后测试),回归测试(软件的维护阶段)
48、黑盒测试:黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用
49、黑盒测试测用于发现:是否有不正确或遗漏了的功能;在接口上,能否正确地接受输入数据,能否正常的产生输出信息;访问外部信息是否有错;性能上是否满足要求;界面是否错误,是否不美观;初始化或终止错误58、人工测试的优点:测试用例的设计,测试人员的经验和对错误的判断能力是自动化测试不可替代的;界面和用户体验测试,人类的界面审核和心理体验是自动化测试不可模拟的;正确定的检查,人们对是非的判断、逻辑推理能力是自动化测试不具备的;测试过程中的灵活变动,人工可以很据需求进行变动,调解;支持不同场景测试,测试过程在复杂的场景下进行测试;手工测试可以完成所有的测试
59、人工测试的缺点:回归测试的工作量较大;压力测试、性能测试效果比较差;人为因素比较大
60、自动化测试:使用自动化测试工具来模拟手动测试步骤
61、自动化测试的优点:对程序的回归测试更方便;可以运用更多更繁琐的测试;可以执行一些人工测试不可能执行的测试;更好的利用资源;测试具有一致性和可重复性;增加软件信任度
50、黑盒测试的两种基本方法:通过测试,失败测试
51、黑盒测试的优点:比较简单,不需要了解程序内部的代码及实现;与软件的内部实现无关;从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;基于软件开发文档,所以也能知道软件实现了文档中的那些功能;在做软件自动化测试时较为方便
52、黑盒测试的缺点:不可能覆盖所有代码,覆盖率较低,大约30%;自动化测试的复用性较低
53、白盒测试:基于代码的测试
54、白盒测试的优点:更易于定位错误的原因和具体的位置
55、白盒测试的缺点:不能检出程序中的设计缺陷;不能检查是否遗漏了功能;发现不了一些与数据相关的错误
56、白盒测试的分类:静态白盒测试,动态白盒测试
57、人工测试:由人工按照事先对需求要分析文档而写好的测试用例一个一个的输入执行,然后观察结果,检测是否对应
看了“测试工程师知识点”的还看了:
1.测试工作求职信
2.教师教育方面自我评价
3.大学计算机期末论文
4.上行带宽怎么测试
5.关于计算机网络安全证书介绍