软件测试理论

本文探讨了软件测试的必要性,指出软件开发过程中存在的潜在问题和用户对软件体验的高要求。强调了专业软件测试人员的需求增长,并解释了为何不应由开发人员自行测试。介绍了软件测试的定义、原则、级别以及常见方法。同时,概述了软件质量的多个维度,并对比了BS和CS架构的优缺点。最后,列举了不同类型的测试和常见浏览器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一,为什么需要软件测试:

1.一款软件从无到有会经历很多的开发阶段由不同的人来参与开发,所以最终产出的软件 功能可能会存在问题。因此为了保证软件的功能是可用的,我们必须要进行测试。

2.当前的软件件行业已经不在是功能为王了,用 户不仅仅只盯着软件的功能是否满足需求, 还会对软件是否容易上手,执行效率是否 OK .....等一系列其它体验都有了更高的要求,所以 这也需要我们对软件进行大量的测试。(总的来说就是软件开发不存在完美软件,软件开发过程要进行测试来找出软件中存在的缺陷,软件质量得到保证,按客户需求指定计划实现软件的功能性,适用于客户的日常需求)

二,为什么选择软件测试

1. 国内的软件行业对于专业的软件测试人员需求是慢慢变大。

2. 有些人喜欢创造世界所以他们做了开发, 我们就是希望这个世界变得更加美好所以做了 而测试。

三,为什么不让开发自己做测试

1.当前行业有许多的测试从业人员本身之前都是开发岗。

2.专业度:软件测试和软件开发分别属于软件行业当中二个不同的技术方向。所以让专人 做专事对于质量更加有保证。

3.思维定式: 在软件的开发周期中 对于程序员来说他们大多数的时间都是在思考如何实现 具体的软件功能,而不会去从用户的角度考虑如何去"奇葩"的使用这些功能。(不会换位思考想客户的需求)

4.测试力度: 相对于开发来说,产器就相当于是他们的"孩子"。所以"下手"就不会那么狠。(开发人员总觉得代码像孩子一样,谁会质疑自己的代码是否有问题呢)

五,软件的定义:

1,通过手工或者工具对,“被测试的对象”进行测试,然后验证实际结果和预期结果之间存在的差异

2,软件测试就是一个找Bug的过程

3,软件测试是衡量一个软件的质量,验证实际结果和需求规格说明书是否存在差异,确认缺陷得已修复

6,测试原则(重点要记)

测试原则:

所谓的测试原则指的计算我们在执行测试工作时必须要遵守的一些规则

1.测试证明软件存在的缺陷:无论执行什么样的是操作都保证能证明当前软件是存在缺陷的

2.不能执行穷尽测试: 有些功能是没有办法将所有的测试情况都罗列出来的,所有任何的测试时间都有结束时间

3.缺陷存在集群现象:对于软件功能说,核心功能占20%,非核心是80%的bug出现于20%的模块

4:某些测试需要依赖特殊的环境: 很多开发人员不会写if语句,例如删除不会先判断是否存在,或不存在是否会返回报错显示该事务不存在

5:测试应尽早介入:为了更多发现和更好的解决软件中的缺陷,我们追求测试工作尽早的开展(应该尽早的不断的进行软件测试)

6,杀虫剂现象:同样一个测试用例不能重复的执行多次,因为软件会对它产生免疫,就像杀虫一般多了就会产生免疫,

7,所有的测试都应该参考软件需求规格说明书

7:不存在缺陷谬论:任何软件都不是完美的

8:测试人员应该妥善保存测试过程中产生的文档

9:测试人员应该根据测试计划,测试用例进行测试,杜绝测试的随意性

7,测试级别,(要记

测试级别
对象参考依据方法概念
单元测试类,函数,组件,最小的单元模块详细设计文档白盒测试对软件中最小的模块进行测试,进行正确的验证
集成测试多个单元模块连通性(接口)概要设计文档(接口文档,数据字典)灰盒测试在单元模块的基础上,它各个单元模块逐步有序渐增,以测试不同模块之间的接口调用
系统测试整个系统以及周边软件需求规格说明书黑盒测试对整个系统以及周边(硬件,网络)进行安全,功能,性能性等测试
验收测试整个系统以及周边软件需求规格说明书黑盒对系统的主线业务路径进行测试,

八,常见的系统测试方法

1,按照测试对象进行分类

白盒测试:主要就是看软件的代码逻辑是否准确,不看界面,只要底层功能实现

黑盒测试:不看代码,看输出结果和输出的数据是否正确

灰盒测试:介于二者之间(接口测试)

2,按照测试对象是否执行分类

静态测试:看代码,看!

动态测试:执行代码

3,按照测试手段进行分类

手工测试:测试人员手动对被测对象进行验证

自动化:一种是自己写测试脚本,另外一种计算通过第三方根据对被测试对象进行测试

九,软件质量(要记)

1. 功能性:软件需要满足用户显式或者稳式的功能。

2. 易用性:软件易于学习 和上手使用。

3. 可靠性:指的就是软件必须实现需求当中指明的具体功能。

4. 效率性:类似于软件的性能。

5. 可维护性:要求软件具有将某个功能修复之后继续使用的能力。

6. 可移植性:当前软件可以从一个平台移植到另一个平台上去使用的能力。

十,二种架构

1,bs:浏览器服务端

2:cs:客服段服务端

总的来说就是bs是一种网页形式,cs是一种总个软件就他们两个就像一个是在浏览器里面玩拳皇,一个下载拳皇进入玩

3,两种架构比较

通过上面的描述可以知道

1,cs比bs更加标准一些

2,cs会比bs效率更快

3,升级的话bs会比cs要快

4,cs相对于网页形式来说更为安全

5,bs的开发测试会比cs低

十一,基本浏览器

二、五大浏览器生产厂商

1MS-edge( 微软 前身是IE 2020115正式发布)

2Chrome ( 谷歌 )

3Firefox( 火狐)

4Safari( 苹果 )

5Opera( 欧朋 )--现在已经放弃自已东西完全向 chrome

十二:常见的图片类型

1. Jpg(jpeg) :这是一种可以高度保留图片色彩信息的格式。

2. Png:该类型的图片可以实现透明。

3. Gif:图片所占体积小,可以实现动态图

4. Psd:它是一种分层的图片。

理论相对来说比较枯燥,但是不得不说在软件测试里面占重要部分,要理解他的意思,可以做到不用死记硬背,可以说的出他是什么东西,做什么用的就可以,结合自己的口述来进行相对于的描述

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值