软件测试理论知识-基本概念

先来看一下什么是软件测试的被测对象?

通俗的讲,就是我们日常见到的各类在电脑、手机、以及一些我们大多数接触的比较少的硬件设备上的相关软件,比如常见的12306购物网站,抖音、淘宝等app、地铁过安检的时候,安检员坐在电脑面前看得监控画面等,这些相关的软件在投入市场使用之前,都离不开软件测试人员的检验,就像工厂里面的质检员一样,虽然检验的产品不一样,但是性质都差不多。

什么是C/S、B/S架构?

Client/Server,及客户端/服务器架构。特点是:使用前需要下载一个客户端,安装之后就可以用,比如QQ、淘宝app等。

Browser/Server,及浏览器/服务器架构。此类产品无需特别安装,通过浏览器即可访问。

白盒测试、黑盒测试、灰盒测试的概念

白盒测试是基于软件内部设计和程序实现的测试方法。不仅仅要关注输入输出,还要关注内部处理逻辑。

黑盒测试不关注程序内部的处理逻辑,只关注输入和输出。比如买车票,你选好车票付款,然后给你出票,你不用关注中间这个票是怎么产生的,后台是怎么去判断有没有余票的。

灰盒测试是介于白盒和黑盒之间的一种测试。

兼容性测试

指检查被测软件在不同的硬件平台上、不同的应用软件之间(不同浏览器等),不同的操作系统中(windows/linux/mac/android/iphone)、不同的网络环境中(wifi,2/3/4/5G)是否可以正常运行的一种测试。

易用性测试

这个的侧重点不是软件能不能用,而是软件好不好用,使用起来方不方便,用户学习成本高不高。

Alpha测试、Beta测试

简单的理解,Alpha测试就是开发阶段测试人员内部参与验证,beta测试类似于用户验收测试

瀑布模式、V模型、X模型

瀑布模式按照固定顺序开展工作。

V模型通过开发测试同时进行的方式,缩短了项目周期。

W模型中增加了软件开发阶段中同步进行的验证和确认活动。

X模型:先通过单独的程序片段进行编码和测试,最后再把这些程序片段集成起来一起测试。

H模型:在H模型中,软件测试的过程活动完全独立,某个需求可以转测的时候,就可以从测试准备阶段进行到测试执行阶段。

对以上的模型,有个大概的了解即可,很多时候并没有明显的区分,都是很多种一起混用。

常见的几个环境

开发环境、测试环境、预生产环境、生产环境。可能还会存在一些不一样的叫法,比如dev、sit、stg、uat、pre、prod等

遗留几个简单的概念自己查资料了解一下,不太清楚的可以再问:

冒烟测试、回归测试、单元测试、集成测试、系统测试、验收测试、软件生命周期。