软件测试的类型、分类与分级
想要了解软件测试的基本概念以及黑盒白盒测试,首先要明白一个软件开发的流程。即SDLC流程或SDLC模型。
SDLC(软件开发生命周期,Software development life cycle):软件开发的过程被称为软件开发生命周期。
软件开发生命周期有哪些阶段?分别做什么
软件开发生命周期的阶段:
SDLC计划阶段-软件开发计划方案
SDLC需求分析-软件开发需求分析
SDLC设计阶段-软件开发设计阶段
SDLC编程阶段-软件开发编程语言
SDLC部署阶段-软件部署流程
SDLC维护阶段-软件维护
软件测试的重要性和目的:软件测试是软件开发的重要阶段,如果没有执行软件测试,软件部署到服务器或云平台就无法实现。因此软件测试是软件开发过程中的一项重要内容。软件测试的目的是为了确认我们正在开发的软件的正确性以及我们是否在构建正确的软件。我们化繁为简的看一下:
软件的正确性:软件的正确性是指软件产品能正常工作。
构建正确的软件:你在构建正确的软件吗?开发的软件产品须符合客户需求,专业术语称软件确认(Validation in Testing)。
以邮箱退出登录为例:当你退出邮箱时,网页会跳转到退出界面,但是如果客户指定要求退出邮箱时页面需自动跳转到主页或其它客户指定跳转的页面。在这样的情况下,软件的正确性是指用户在退出邮箱时网页会跳转到退出界面;当用户退出邮箱时页面会跳转到用户指定的页面时就说明你是以客户需求为标准在构建正确的软件。
软件测试分类有哪些?
软件测试类型主要包括:手工测试和自动化测试。
手工测试和自动化测试的区别:手工测试-测试工程师需要手动执行测试;自动化测试-测试工程师需要编写测试脚本、测试用例并借助自动化测试工具来执行测试。
软件测试分类思维导图
软件测试方法分为哪两类?
软件测试分类方法:软件测试方法分为功能测试和非功能测试两大类。
功能测试和非功能测试
软件测试功能性测试-功能测试包括哪些?
功能测试方法:功能测试的基本方式是测试产品或应用程序的代码、功能和所有组件。比如说,一个应用程序有登录&退出登录的功能,那么功能测试的目的是测试应用程序的登录&退出登录功能是否能按如上所述正常工作。
非功能测试包括哪些测试?
非功能测试方法:执行非功能测试的目的是检查应用程序的性能,包括测试它的运行速度、可伸缩性、负载测试等,所有这些都属于非功能测试范围。
软件测试技术有哪些?
软件测试技术大体可以分为两大类,一类是黑盒测试,一类是白盒测试。
黑盒测试概念
黑盒测试:黑盒测试方法是在不知道产品内部运行的情况下测试产品的整体行为,要确保所有的输入都有相应的正确输出,软件产品整体运行良好。
软件工程白盒测试概念
白盒测试:白盒测试方法需要测试产品的内部功能并将其与客户需求相匹配,看看是否所有代码都能正常工作。
软件测试如何分级?软件测试级别是哪四种?
软件测试的分级:单元测试、集成测试、系统测试、验收测试。
软件测试方式有哪些?
软件测试方式有几种?软件测试方式包括:
单元测试
软件测试中的单元测试是什么?单元测试怎么做?
当我们开发一个软件时需要编写软件代码,然而这些软件代码编译后产生的文件类型各不相同。比如说,java编译后会产生java class文件。所以当我们测试软件的最小可测试单元时将其称之为单元测试。如果软件开发人员使用的是java代码,这种软件测试方式就被称之为Junit(Java单元测试框架)。
集成测试
集成测试名称解释, 集成测试主要测什么?
当一个软件所有的单元都经过测试后,测试人员会将所有测试过的单元集成为子系统或系统并对其进行组装测试,这种软件测试方式我们称之为集成测试。
系统测试
系统测试是什么?系统测试的主要目的:
当软件部署到系统上(服务器或云平台)时,测试人员会对其进行测试,看看它是如何与系统上的真实数据一起工作的,这种软件测试方法我们称之为系统测试。
验收测试
软件验收测试,验收测试的定义:
系统测试完成后,测试人员会将软件产品与客户真实需求进行比对,这种软件测试方式我们称之为验收测试。