龙空技术网

软件测试-基础知识点(一)

好学的西柚 98

前言:

目前我们对“白盒测试需要考虑模块内部的执行过程吗对吗”大概比较着重,姐妹们都需要知道一些“白盒测试需要考虑模块内部的执行过程吗对吗”的相关资讯。那么小编同时在网络上搜集了一些关于“白盒测试需要考虑模块内部的执行过程吗对吗””的相关知识,希望我们能喜欢,我们一起来了解一下吧!

一.什么是软件?

软件是计算机程序,程序所用的数据以及有关文档资料的集合。

软件=计算机程序+数据+文档资料

软件包括系统软件和应用软件,系统软件包括操作系统,数据库,驱动程序或编译环境等。应用软件包括APP,QQ,微信等。对于软件测试工程师来说一般测试的都是应用软件

二.什么是软件测试?

软件测试是使用人工或自动手段来运行或测试某个软件的过程,目的在于检验他是否满足规定的需求或弄清预期结果与实际结果之间的差别。

通俗易懂的讲:带着目的性(发现问题),使用手段(人工或自动)运行系统(软件)的过程。

三.为什么要做软件测试,他的目的是什么?

1.软件测试为了发现程序存在的代码或业务逻辑错误

2.软件测试为了检验产品是否符合用户需求

3.软件测试为了提高用户的体验,站在用户角度考虑

注:什么是业务?业务就是完成具体某个事件包含的一系列操作。比如网购,他本身就是一个业务,注册-登录-筛选-加入购物车-付款-发货-收到商品。那么整个流程下来就是一个大业务。单个的步骤也是一个小业务。

四.软件测试的分类

1.按测试技术/方法划分:白盒测试,黑盒测试,灰盒测试

白盒测试:基于软件内部设计和程序实现的测试方法,基于代码层面,不仅仅要关注输入与输出的结果是否正确,同时还需要关注程序是如何处理的。

黑盒测试:在测试过程中只关注输入和输出,不管内部的逻辑和走向,只关注输入输出是否正确,也叫数据驱动测试。

灰盒测试:主要用于集成测试阶段,不仅关注输入和输出结果,也关于程序内部运行情况,比如接口测试。

2.按软件是否运行划分:动态测试,静态测试(文档检查,代码走查)

动态测试就是运行程序,静态测试是不运行程序,检查文档等。

3.按不同的测试手段划分:手工测试,自动化测试

自动化测试就是用工具或代码替代手工测试。

4.按测试包含的内容划分:功能测试,界面测试,安全测试,兼容性测试,易用性测试,性能测试等

功能测试:测试软件的功能是否符合需求,通常采用黑盒测试方法。

界面测试:UI测试,测试用户页面布局是否合理,整体风格是否一致,文字是否正确等所有的关于页面展示效果。

安全测试:通过测试该系统防止非法入侵的能力。

兼容性测试:测试软件与其他软件硬件兼容的能力,比如网站浏览器是否支持多种。

易用性测试:是否易于学习和使用,减少记忆负担。

性能测试:通过性能测试工具模拟多种正常,峰值以及异常负载条件下对软件的各项性能指标进行测试。性能测试包括压力测试,负载测试和并发测试。

5.按测试执行阶段划分:单元测试,集成测试,系统测试,验收测试

单元测试--->集成测试--->系统测试--->验收测试

单元测试:主要测试程序代码,为的是确保各个单元模块被正确编译,具体到类,函数,方法的测试。主要用到白盒测试方法。由开发自测或有编码能力的测试人员完成。

集成测试:单元测试后,将各个模块组成完整体系,测试模块与模块之间的接口是否正确,数据是否能正常传递。主要用到的是接口测试。由测试人员完成。

系统测试:把软件系统搭建起来,根据需求规格说明书要求,测试软件功能性能等是否符合用户需求,查看系统运行中是否存在漏洞等。属于黑盒测试方法,由测试人员完成。

验收测试在软件完成功能测试和系统测试之后,产品发布之前所进行的软件测试活动。它是技术测试的最后一个阶段,也称为交付测试。包括正式验收测试和非正式验收测试(Alpha测试和Beta测试)。

正式验收测试:他是系统测试的延续,通过筛选测试用例中部分重要的测试用例进行正式验收,可以给第三方进行验收。

非正式验收测试:

Alpha测试:是一种前期的用户测试,软件产品刚研发出来前期,公司内部组织员工或部分真实用户,模拟实际操作环境(测试环境)下进行验收测试(内测)。此时测试和开发都在场。

Beta测试:一种后期用户测试,此时系统已经通过内部此时团队的测试,大部分错误已经改正,即将正式上线,在一个或多个真实环境下发布版本,真实用户进行测试(公测)。此时测试和开发都不在场。

6.其他测试:冒烟测试,回归测试,探索性测试(自由测试)

冒烟测试:对一个新编译需要正式测试的软件版本进行测试的过程,目的是确认软件的基本功能是否正常,可以进行后续的测试工作。

冒烟测试发生在正式测试之前,先预测下基本功能(注册,登录等)是否正常,如果不通过,打回处理;如果通过,进行正式测试。

回归测试:指错误被修正后或软件功能等发生变化需要进行重新测试,确认修改部分是否对其他功能造成影响。

回归测试不单是验证BUG,还要验证BUG关联功能是否有问题。

探索性测试(自由测试):不依靠测试用例,主要根据测试人员的主观能动性,依赖测试经验进行测试。

标签: #白盒测试需要考虑模块内部的执行过程吗对吗