软件工程及软件测试技术
- 格式:docx
- 大小:26.53 KB
- 文档页数:13
软件工程中软件测试方法软件测试是软件工程中非常重要的环节,它用于验证和评估软件系统是否满足预期的需求,并发现其中的错误和缺陷。
在软件测试过程中,可以采用多种不同的测试方法来确保软件的质量和稳定性。
以下是一些常见的软件测试方法:1. 黑盒测试:这种测试方法着重于测试软件系统的功能性,而不考虑内部的实现细节。
测试人员只关注输入和输出之间的关系,通过输入不同的数据,检查系统的响应和输出是否符合预期。
黑盒测试通常包括等价类划分、边界值分析、决策表等技术来设计测试用例。
2. 白盒测试:与黑盒测试相反,白盒测试关注软件系统的内部结构和实现。
测试人员需要了解代码的逻辑和结构,在此基础上设计相关的测试用例。
白盒测试通常包括语句覆盖、分支覆盖、路径覆盖等技术,以确保代码的全面覆盖率。
3. 灰盒测试:灰盒测试是黑盒测试和白盒测试的结合,既考虑系统的功能性,也考虑内部的实现。
测试人员在设计测试用例时,会兼顾输入输出关系和代码结构等因素。
4. 冒烟测试:冒烟测试也称为可靠性测试或基本功能测试,用于验证软件系统的基本功能是否正常工作。
在软件开发过程中的早期阶段,进行冒烟测试可以尽早发现严重的错误和缺陷。
5. 性能测试:性能测试用于评估软件系统在不同负载下的性能表现,包括响应时间、吞吐量、并发性能等指标。
通过性能测试,可以确定系统在实际使用场景下的性能瓶颈,并进行性能优化。
6. 安全测试:安全测试用于评估软件系统的安全性,包括数据安全、身份认证、访问控制等方面。
通过安全测试,可以发现系统中的安全漏洞和弱点,并提供相应的安全防护措施。
7. 兼容性测试:兼容性测试用于验证软件系统在不同的操作系统、浏览器、设备等环境下的兼容性。
通过兼容性测试,可以确保软件在各种环境下都能正常运行。
以上是软件工程中常见的软件测试方法,每种方法都有其特定的应用场景和测试目标。
在实际项目中,通常会根据需求和资源的情况,选择合适的测试方法来保证软件的质量和稳定性。
软件工程中软件测试技术的研究1. 软件测试技术的定义和意义软件测试技术是软件工程中的重要组成部分,旨在检查和评估软件系统的质量和可靠性。
它是通过执行预定义的测试用例,以发现潜在的缺陷和错误,并确保软件系统能够按照预期工作。
软件测试技术对于确保软件质量、降低开发成本、提高用户满意度等方面具有重要意义。
2. 软件测试技术的分类根据测试目标和方法,软件测试技术可以分为静态测试和动态测试两大类。
静态测试主要通过检查代码、文档等静态资源来发现潜在问题,如代码审查、文档审查等;动态测试则是通过执行程序来检测系统行为是否符合预期,如黑盒测试、白盒测试等。
3. 软件开发生命周期中的软件测试在整个软件开发生命周期中,软件测试贯穿始终,并与其他开发活动相互交织。
从需求分析阶段开始,通过与用户沟通来明确需求并编写相应的用例;在设计阶段,根据设计文档编写相应的用例;在编码阶段进行单元和集成级别的单元测验;最后在系统测试阶段执行完整的系统测试。
4. 软件测试技术的研究方向4.1 自动化测试技术自动化测试技术是当前研究的热点之一。
通过自动化测试工具和框架,可以提高测试效率和准确性,减少人工成本。
自动化测试技术可以应用于各个阶段的软件测试,包括单元测试、集成测试、系统测试等。
4.2 基于模型的软件测试基于模型的软件测试是一种基于系统模型进行软件验证和验证的方法。
通过建立形式化模型,可以在早期发现潜在问题,并提高软件开发过程中各个阶段之间的协同效应。
基于模型的软件开发方法可以提高开发效率、降低维护成本,并确保系统满足用户需求。
4.3 云端和移动端软件测试随着云计算和移动互联网技术的快速发展,云端和移动端应用程序正变得越来越普遍。
然而,由于复杂性、分布式性等特点,这些应用程序面临着更多挑战。
因此,在云端和移动端环境中进行有效且可靠的软件验证和验证成为一个重要的研究方向。
4.4 安全性和可靠性测试随着网络攻击和数据泄露事件的频繁发生,软件系统的安全性和可靠性测试变得越来越重要。
软件工程软件测试与质量保障技术软件测试是软件工程中至关重要的一环,它确保软件产品的质量和可靠性。
软件测试是通过对软件系统进行各种测试活动,以发现潜在的缺陷和错误,从而提高软件的可靠性和效果。
本文将介绍软件工程中的软件测试与质量保障技术,包括测试策略、测试方法、测试工具等。
一、测试策略在软件测试过程中,制定一个有效的测试策略至关重要。
测试策略是指根据软件的需求和目标,制定测试计划和测试的方法。
测试策略应包括以下几个方面:1.测试目标:明确测试的目标是什么,例如发现潜在的缺陷、验证功能是否按要求工作等。
2.测试范围:确定测试的范围,包括哪些模块、功能、系统需要进行测试。
3.测试方法:选择适当的测试方法,例如黑盒测试、白盒测试、灰盒测试等。
4.测试资源:确定测试所需的人力、物力和时间等资源,并合理安排。
二、测试方法软件测试方法是通过一定的测试手段和技术来验证软件的正确性和健壮性。
常用的测试方法包括以下几种:1.黑盒测试:黑盒测试是基于软件需求规格说明书的测试方法,检查软件是否符合规格要求,而不需要了解内部结构。
2.白盒测试:白盒测试是基于软件内部结构的测试方法,验证代码的正确性和覆盖率,要求了解软件的内部实现。
3.灰盒测试:灰盒测试是黑盒测试和白盒测试的结合,既验证功能是否正确,又验证代码的覆盖率。
4.单元测试:单元测试是对软件的最小单元(如函数、类)进行测试,以保证其功能的正确性。
5.集成测试:集成测试是将各个单元组合成一个整体,并检查各个单元之间的接口和交互是否正确。
6.系统测试:系统测试是对整个软件系统进行全面的功能和性能测试,以验证系统的完整性和稳定性。
三、测试工具测试工具在软件测试中起到了重要的辅助作用,能够提高测试的效率和准确性。
常用的测试工具包括以下几种:1.自动化测试工具:自动化测试工具可以自动执行测试用例,并生成测试报告,提高测试的效率和准确性。
2.性能测试工具:性能测试工具可以模拟多个用户同时访问软件系统,评估系统的负载能力和性能表现。
《软件工程与测试》教案一、教学内容分析本门课程《软件工程与测试》主要包含软件工程和软件测试两个方面的内容。
软件工程是一门研究软件开发管理和组织的学科,通过系统化的方法和策略来实现高质量的软件开发。
软件测试是软件工程中非常重要的一环,通过测试来发现并修复软件中的缺陷,提高软件的质量。
二、教学目标和要求1.掌握软件工程和软件测试的基本概念和方法。
2.了解软件开发生命周期及其各个阶段的任务和活动。
3.能够运用软件测试的方法和技巧进行软件质量评估。
三、教学内容和方法1.软件工程基础(1)软件工程概述(2)软件开发生命周期(3)软件需求工程(4)软件设计与建模(5)软件测试与维护2.软件测试基础(1)软件测试概述(2)软件测试的基本原则和策略(3)软件测试的技术和方法(4)软件测试用例设计(5)软件测试工具与环境3.教学方法(1)理论讲授:通过课堂讲解,介绍软件工程和软件测试的基本概念和方法,加深学生对理论知识的理解。
(2)实例分析:通过案例分析,让学生了解软件开发生命周期各个阶段的任务和活动,加深对软件工程的实际应用的理解。
(3)实践操作:通过实践操作,让学生掌握软件测试的方法和技巧,提高软件质量评估能力。
四、教学评价方法1.平时作业:每周布置相关作业,包括理论思考题和实践任务,通过作业来检查学生对学习内容的掌握情况。
2.期中考试:开设期中考试,考查学生对软件工程和软件测试基本概念的理解和应用能力。
3.期末考试:开设期末考试,考查学生对软件工程和软件测试的整体理解和应用能力。
4.课堂参与度:以学生的课堂积极参与度和表现为基础,进行课堂表现的评价。
五、教学进度安排第1-2周:软件工程概述第3-4周:软件开发生命周期第5-6周:软件需求工程第7-8周:软件设计与建模第9-10周:软件测试与维护第11-12周:软件测试概述第13-14周:软件测试的基本原则和策略第15-16周:软件测试的技术和方法第17-18周:软件测试用例设计第19-20周:软件测试工具与环境六、教学资源准备1.教材:选用相关的软件工程和软件测试的教材。
《软件工程与软件测试技术》课程复习大纲与练习题备注:1)复习材料包括:复习大纲、教材、授课幻灯片、习题课幻灯片、在线练习题。
2)如学员使用其他版本教材,请参考相关知识点第一章软件工程和软件测试概述•基本概念:软件、软件危机、软件工程、软件生命周期、软件过程模型•重点的知识点:–软件工程方法学的要素–软件生命周期都包括哪些阶段,每个阶段的任务–主要的软件过程模型有哪些,每个软件过程模型的特点、优点、缺点、适用场合•需了解的知识点–软件测试的起源–软件测试工程师应具备的素质第二章软件测试基础•基本概念:–软件测试,软件缺陷,软件质量保证,单元测试,集成测试,系统测试,确认测试,验收测试,黑盒测试,白盒测试,灰盒测试,开发方测试(alpha测试),用户测试(Beta测试),第三方测试,V模型,W模型,H模型,X模型,前置测试模型•重点的知识点:–软件测试的目的–软件测试的原则–软件测试的类型–软件测试模型–软件质量保证的工作内容•需了解的知识点–软件质量保证的工作过程–软件质量保证的目标–软件质量保证与软件测试的区别第三章白盒测试技术•基本概念:–白盒测试,静态测试,动态测试,桌面检查,代码审查,走查,静态结构分析,基本路径测试法,LCSAJ•重点的知识点–逻辑覆盖法(掌握各种逻辑覆盖的定义和条件)–基本路径测试法–最小测试用例数的计算–白盒测试的综合测试策略–ESTCA覆盖准则–LCSAJ覆盖准则•需了解的知识点–词法分析与语法分析–静态程序分析–程序插桩技术–静态质量度量法第四章黑盒测试技术•基本概念–黑盒测试,有效等价类、无效等价类,等价类划分法、边界值分析法、场景法、因果图法、正交实验法、判定表法,错误推测法、随机测试、功能分解法等•重点的知识点–功能测试用例设计方法(等价类划分法、边界值分析法、场景法、因果图法、正交实验法、判定表法,错误推测法、随机测试、功能分解法等)–测试方法综合使用策略•需了解的知识点–黑盒测试用例的编写和组织–QTP自动测试工具。
软件工程师软件测试方法软件测试是软件工程中不可或缺的一环。
在软件开发过程中,软件测试师扮演着重要的角色,他们通过使用各种测试方法和工具来确保软件的质量和稳定性。
本文将简要介绍一些常用的软件测试方法,帮助软件工程师更好地进行测试工作。
1. 功能测试功能测试是软件测试中最常见也是最基础的一种方法。
在这种测试中,测试人员通过输入各种输入数据,测试软件的各项功能是否正常工作。
功能测试通常包括输入验证、界面测试、用户操作测试等。
它通过检查软件是否按照预期执行任务来验证软件的正确性。
2. 性能测试性能测试旨在评估软件在不同负载条件下的性能表现。
测试人员使用各种方法来模拟实际使用情况,例如并发用户数、数据负载等,以确保系统在高负载情况下的可扩展性和稳定性。
性能测试可以帮助软件工程师识别和解决系统中的性能瓶颈和资源利用不佳的问题。
3. 安全测试安全测试是为了评估软件在安全方面的表现。
软件工程师需要测试系统是否容易受到黑客攻击、数据泄露或其他安全漏洞。
安全测试通常涉及网络扫描、渗透测试、代码审查等技术手段,以确保软件在不同场景下的安全性。
4. 兼容性测试兼容性测试用于确保软件在不同的操作系统、浏览器或设备上正常运行。
测试人员使用各种操作系统和浏览器的组合来测试软件的兼容性。
这种测试方法有助于软件工程师发现并解决不同平台上的兼容性问题,提高软件的可用性和用户体验。
5. 接口测试接口测试是为了验证软件与外部系统或组件之间的交互是否正常。
软件工程师会测试软件的各种接口,例如数据库接口、Web服务接口等。
接口测试可以帮助软件工程师发现接口间的通信问题和数据一致性问题,确保系统的正常运行。
6. 自动化测试自动化测试是一种高效的测试方法,通过使用各种测试工具和脚本自动执行测试用例。
软件工程师可以使用自动化测试来增加测试覆盖范围,提高测试效率。
自动化测试通常适用于重复性较高的测试任务,例如回归测试。
总结:软件测试是确保软件质量的重要一环。
软件工程的方法和技术从事软件开发的人都知道,开发一款完美的软件往往需要耗费巨大的人力和物力资源。
而软件工程的方法和技术则是能够帮助开发团队在软件研发过程中更为高效、准确地完成任务的一套体系。
本文将就软件工程的方法和技术做简要介绍。
一、软件工程的理论基础软件工程起源于上个世纪六十年代,当时人们正面临着大型计算机系统的开发难题。
软件工程的产生就是为了解决软件开发中的这些难题。
软件工程的理论基础主要是计算机科学、系统工程、管理学、心理学、数学等方面的理论。
其中,计算机科学是软件工程的主要理论基础,它包括了编程语言、计算机体系结构、操作系统等几乎所有软件开发人员必须掌握的内容。
二、软件工程的方法和技术1. 需求分析需求分析是软件工程中非常重要的一个过程,它决定了软件开发的方向和目标。
在需求分析过程中,开发团队需要与用户进行充分的沟通,了解用户的需求和期望,随后制定相应的软件需求规格说明书。
这个步骤中,业务指导者和开发人员需要保证在软件的需求描述上保持一致性,否则将会给后续的工作带来很多不必要的麻烦。
2. 设计设计是软件开发过程中的又一个重要步骤。
在这个步骤中,开发人员需要根据需求分析报告设计出软件的系统结构、模块划分、功能界面等。
此时,需要审慎考虑以往的构建经验和规范,同时也应该考虑到未来扩展和维护的可行性和易用性。
3. 编码在软件开发的编码阶段,编程员们将会使用之前设计好的算法来实现需要的功能。
一些流行的编程语言,例如C++、Java和Python等,都将会被使用在这个阶段。
代码的质量和可扩展性往往取决于编码人员的经验和技术水平,同时也取决于编码的规范和流程。
4. 软件测试软件测试是在软件开发中很重要的一个过程。
软件测试可以从各个方面发现软件的缺陷和漏洞,例如兼容性问题、性能问题以及功能性问题。
在软件测试中,开发人员需要对软件进行多种测试,包括单元测试、应用程式界面(API)测试、性能测试、验收测试、压力测试等。
软件工程与软件测试软件工程是指对软件进行系统性、规范化、可靠性地开发、运行和维护的一门学科。
而软件测试则是软件工程的重要环节,旨在评估和改善软件质量,并确保软件满足用户的需求。
本文将从软件工程和软件测试的概念、方法以及重要性等方面进行探讨。
一、软件工程的概念与方法软件工程是一门涉及软件开发、维护和管理的学科,它结合了工程学的原则和方法,旨在提高软件的质量、效率和可靠性。
软件工程包括项目管理、需求分析、系统设计、编码、测试和维护等多个阶段。
为了保证软件工程的质量和可靠性,软件工程师采用了一系列的方法和工具。
例如,敏捷开发是一种迭代、增量的开发方法,强调与客户的密切合作和快速响应变化。
而瀑布模型则是一种经典的开发方法,按照线性顺序依次完成不同阶段的任务。
此外,还有原型模型、迭代模型、螺旋模型等多种开发方法可供选择。
二、软件测试的概念与分类软件测试是为了发现软件中的错误、缺陷和漏洞,保证软件质量和完整性的一种活动。
它是软件工程过程中的关键环节,旨在验证软件的功能和性能是否符合需求,并检查系统在各种条件下的表现。
根据测试对象的不同,软件测试可以分为单元测试、集成测试、系统测试和验收测试等多个层次。
其中,单元测试是对软件中最小的可测试单元进行测试,通常指代码中的一个函数或方法;集成测试是在单元测试的基础上,将多个模块进行组合,验证它们之间的接口和交互;系统测试是对整个系统进行全面的测试,以确认其是否满足用户的需求;验收测试则是用户在接收软件之前进行的一种测试,旨在确认软件是否满足了其既定的要求。
三、软件工程与软件测试的关系软件工程与软件测试密切相关,二者相互促进、相互支持。
软件工程的目标是构建高质量的软件系统,而软件测试则是确保软件系统质量的重要手段。
软件工程师不仅需要有开发软件的技能,还需要具备一定的软件测试知识和技能。
软件工程的各个阶段都需要进行相应的测试活动。
例如,在需求分析阶段,可以通过需求审查和验证活动,发现和修复需求中的潜在问题。
软件工程及软件测试技术《软件工程与软件测试技术》课程复习资料注:如学员使用其他版本教材,请参考相关知识点及教师PPTPPT相关章节标记示例“(1.1),(1.4)”一、客观部分:(单项选择、多项选择、不定项选择、判断)(一)单项选择题1.关于原型化开发方法的叙述中,不正确的是()。
A. 原型化方法适应于需求不明确的软件开发B. 在开发过程中,可以废弃不用早期构造的软件原型C. 原型化方法利于确认各项系统服务的可用性D. 原型化方法可以直接开发出最终产品★考核知识点: 原型开发模型的特点。
相关知识参考教材中P8及课件相关内容。
(1.1)2.以下属于软件维护阶段文档的是()。
A.测试分析报告 B.操作手册 C.软件问题报告 D.软件需求说明★考核知识点:软件生命周期各阶段的任务,在软件维护的流程中,第一步就是制定维护申请报告,也称为软件问题报告,它是维护阶段的一种文档,由申请维护的用户填写。
(1.1)3.在软件生命周期的不同阶段,需要实施不同类型的测试工作,单元测试是对程序设计进行验证,其中()不是单元测试的主要内容。
A. 模块接口测试B. 有效性测试C. 路径测试D. 边界测试★考核知识点:单元测试的主要内容,有效性测试即确认测试,不属于单元测试。
(1.1)4.软件测试的目的是()。
A.发现程序中的错误B. 证明程序中没有错误C. 测量程序的动态特性D. 检查程序中的语法错误★考核知识点:软件测试的目的。
(2.1)5.对于软件的β测试,下列描述正确的是()。
A.β测试就是在软件公司内部展开的测试,由公司专业的测试人员执行的测试B.β测试就是在软件公司内部展开的测试,由公司的非专业测试人员执行的测试C.β测试就是在软件公司外部展开的测试,由专业的测试人员执行的测试D.β测试就是在软件公司外部展开的测试,可以由非专业的测试人员执行的测试★考核知识点: β测试的概念,又称用户测试。
(2.1)6.V模型指出,()对程序设计进行验证 .A. 验收测试和确认测试B. 系统测试C. 单元和集成测试D. 验证测试★考核知识点:V模型的概念,单元和集成测试对程序设计进行验证。
(2.3)7.下面哪个不属于静态测试?()A.编码规则检查B.内存泄漏C.程序复杂度分析D.程序结构分析★考核知识点:静态测试的内容,编码规则检查、程序复杂度分析和程序结构分析都属于静态测试,内存泄露属于性能测试检查的范畴,不属于静态测试。
(3.2)8.使用白盒测试方法时,确定测试数据应根据()和指定的覆盖标准。
A.程序的内部逻辑 B.程序的复杂结构 C.使用说明书 D.程序的功能★考核知识点:白盒测试的概念,白盒测试主要根据程序的内部逻辑来设计测试用例。
(3.1)9.下列测试工具中哪个不能作为性能测试压力工具()A.Quick Test ProfessionalB.Borland SilkPerformerC.Compware QA Center Performance EditionD.Mercury LoadRunner★考核知识点:性能测试工具(5.4)10.在McCall软件质量度量模型中,属于面向软件产品适应的是().A.可用性B.适应性C.可维护性D.可互操作性★考核知识点:McCall质量模型(7.1)11.下列关于软件测试的叙述中,正确的是()A.用黑盒法测试时,测试用例是根据程序内部逻辑设计的B.测试是为了验证该软件已正确地实现了用户的要求C.发现错误多的程序模块,残留在模块中的错误也多D.黑盒测试方法中最有效的是因果图法★考核知识点:软件测试的基本概念,参考教材13页软件测试的原则的第5条。
(1.2)12.关于白盒测试与黑盒测试的最主要区别,正确的是()。
A.黑盒测试比白盒测试应用更广泛B.白盒测试可以使用测试工具,黑盒测试不能使用工具C.白盒测试需要程序员参与,黑盒测试不需要D.白盒测试侧重于程序结构,黑盒测试侧重于功能★考核知识点:黑盒测试和白盒测试的区别。
参考教材中16页黑盒测试盒白盒测试的定义。
(2.2)13.针对下列程序段,对于(A,B)的取值,以下()测试用例组合能够满足条件覆盖的要求。
IF(( A - 10 )= 20 AND ( B + 20 )> 10 )THEN C = 0IF(( A - 30 )< 10 AND ( B - 30 )< 0 )THEN B = 30①A=50 B=-10 ②A=40 B=40 ③A=30 B=-10 ④A=30 B=30A.①④B.③④C.①②D.②④★考核知识点:条件覆盖。
(3.3)14.用边界值分析法,假定1<x<100,那么x在测试中应该取的边界值是()。
< bdsfid="138" p=""></x<100,那么x在测试中应该取的边界值是()。
<>A.X=1,X=100B.X=0,X=1,X=100,X=101C.X=2,X=99D.X=O,X=101★考核知识点:黑盒测试,边界值分析,参考教材108页边界值分析的原则。
(4.2)15.以下各项中,()属于需求说明书的评测内容?①、系统定义的目标是否与用户的要求一致②、设计的约束条件或限制条件是否符合实际③、是否考虑过软件需求的其他方案④、软件的行为与它必须处理的信息、必须完成的功能是否一致A.①、②、③、④B.①、②、④C.②、③、④D.①、③、④★考核知识点:对需求说明书的评测应考查系统定义的目标是否与用户的要求一致、软件的行为与它必须处理的信息、必须完成的功能是否一致、设计的约束条件或限制条件是否符合实际、是否考虑过软件需求的其他方案16.可行性研究要进行一次( )需求分析。
A. 详细的B. 简化的、压缩的C. 全面的D. 彻底的★考核知识点:可行性分析,可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计。
参考课件中软件生命周期的部分(1.1)17.下述说法错误的是( )。
A. 单元测试又称为模块测试,是针对软件测试的最小单位——程序模块进行正确性检验的测试工作;B. 集成测试是检验程序单元或部件的接口关系,逐步集成为符合概要设计要求的程序部件或整个系统;C. 集成测试也叫做组装测试,通常在编码完成的基础上,将所有的程序模块进行有序的、递增的测试;D. 系统测试是在真实或模拟系统运行环境下,检查完整的程序系统能否和相关硬件、外设、网络、系统软件和支持平台等正确配置与连接,并满足用户需求。
★考核知识点:不同测试之间的区别。
(2.2)18.软件质量的定义是()。
A. 软件的功能性、可靠性、易用性、效率、可维护性、可移植性B. 满足规定用户需求的能力C. 最大限度达到用户满意D. 软件特性的总和,以及满足规定和潜在用户需求的能力★考核知识点:软件质量的定义。
(7.1)19.从下列关于软件测试的叙述中,选出5条正确的叙述,正确的答案是()。
(1) 对于连锁型分支结构,若有n个判定语句,则有2n条路径。
(2) 尽量用公共过程或子程序去代替重复的代码段。
(3) 测试是为了验证该软件已正确地实现了用户的要求。
(4) 用黑盒法测试时,测试用例是根据程序内部逻辑设计的。
(5) 尽量采用复合的条件测试,以避免嵌套的分支结构。
(6) GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。
(7) 发现错误多的程序模块,残留在模块中的错误也多。
(8) 黑盒测试方法中最有效的是因果图法。
(9) 在做程序的单元测试时,桩(存根)模块比驱动模块容易编写。
(10) 程序效率的提高主要应通过选择高效的算法来实现。
A.(1)(5)(6)(7)(10)B.(4)(5)(6)(7)(10)C.(1)(3)(4)(5)(9)D.(1)(2)(3)(8) (9)★考核知识点:软件测试的基本知识的综合应用,可以用排除法。
20.软件测试类型按开发阶段划分是()。
A. 需求测试、单元测试、集成测试、验证测试B. 单元测试、集成测试、确认测试、系统测试、验收测试C. 单元测试、集成测试、验证测试、确认测试、验收测试D. 调试、单元测试、集成测试、用户测试★考核知识点:软件测试的类型。
(2.2)21.针对以下程序段,对于变量c的取值,至少需要()个测试用例才能够满足语句覆盖的要求。
c =((u8_t *)q->payload)[i];switch (c){case SLIP_END:sio_send(SLIP_ESC, netif->state);sio_send(SLIP_ESC_END, netif->state);break;case SLIP_ESC:sio_send(SLIP_ESC, netif->state);sio_send(SLIP_ESC_ESC, netif->state);break;defult:sio_send(c, netif->state);break;}A.1 B.2 C.3 D. 4★考核知识点:逻辑覆盖,可以使用基本路径测试法,程序中有两个判定条件,应该选择2+1个测试用例才能够达到语句覆盖.(3.3)22.软件内部/外部质量模型中,以下()不是功能性包括的子特性。
A.适合性B.准确性C.互操作性D.稳定性★考核知识点:软件质量模型,适合性、准确性、互操作性、依从性和安全性是功能特性包括的子特性,稳定性是可维护性的子特性(7.1)23.针对逻辑覆盖有下列叙述,()是不正确的。
A.达到100%DC要求就一定能够满足100%SC的要求B.达到100%MCDC要求就一定能够满足100%SC的要求C.达到100%CDC要求就一定能够满足100%SC的要求D.达到100%CC要求就一定能够满足100%SC的要求★考核知识点:逻辑覆盖,参考教材90-92页的逻辑覆盖部分。
达到100%条件覆盖未必能够100%满足语句覆盖要求。
(3.3)24.24-26.对于业务流清晰的系统可以利用 24. ____ 贯穿整个测试用例设计过程,在用例中综合使用各种测试方法,对于参数配置类的软件,要用__25. ___ 选择较少的组合方式达到最佳效果,如果程序的功能说明中含有输入条件的组合情况,则一开始就可以选用因果图和__26. ______。
24.A.等价类划分B.因果图法C.场景法 D. 正交试验法25.A.边界值分析B.正交试验法C.因果图法D.场景法26.A.判定表法B.因果图法C.等价类划分D.场景法★考核知识点:黑盒测试技术的使用策略,参考教材119页。
24题中,场景法适合业务清晰的系统;25题中正交实验法适合参数配置类的软件;因果图和判定表法适合程序功能说明中含有输入条件的组合情况.(4.2)25.关于第三方测试的描述,正确的观点是() 。