软件测试定义&分类

第一节 软件测试定义&分类
一、学习目标目标:
1.软件测试的定义及目标
2.软件测试分类
3.常见笔试面试题

二、学习内容
1.了解软件
1.1 什么是软件:软件是计算机程序、程序所用的数据以及有关文档资料的集合
1.2 软件分为:
(1)系统软件:控制计算机硬件工作,如:操作系统Windows、数据库SQL-Sever、 驱动程序、Java语言系统编译环境等
(2)应用软件:满足使用需求而开发的各种程序/软件包。如:APP、QQ、微信、 微博等
1.3 提问:软件测试的对象是什么?——对象为所有可以控制计算机硬件工作运行的程序
1.4 应用软件
(3)C/S(client-server)架构:安装客户端才能够使用的软件,叫C/S架构。缺点: 每次更新都需要重新安装客户端
(4)B/S(Browser-server)架构:在浏览器上即可访问软件的服务就是B/S架构。 优点:只需更新服务器就可以使用,不需要更新浏览器,用户主动性高,比如:天 猫、淘宝等
1.5 提问
(5)爱奇艺是什么架构的产品?
(6)APP是什么架构的产品
2.重点:软件测试是什么?
2.1 定义:通过人工或技术手段检验软件的质量是否满足用户使用需求
2.2 目的:保证软件产品的质量并提高用户使用体验
2.3 提问:玩王者荣耀是否是软件测试?——不是,玩游戏时并未带着测试目的
2.4 什么是业务? ——完成具体某个事件包含的系列操作
3.软件测试的分类
(1)按照技术/方法分类:白盒测试、黑盒测试、灰盒测试
(2)按照被测对象是否运行划分:动态测试、静态测试(文档检查、代码走查)
(3)按照测试手段:手工测试、自动化测试(工具/代码替代手工进行测试)
(4)按照测试包含内容:功能测试、界面测试、安全测试、兼容性测试、易用性测试、性能测试(压力测试、并发测试、负载测试)
(5)测试执行阶段:单元测试、集成测试、系统测试、验收测试(正式验收测试、Alpha测试、Beta测试)
(6)其他测试:冒烟测试、回归测试、探索性测试/自由测试(需要测试思维)
4.测试分类说明
(1)白盒测试:基于代码层面,关注输入与输出结果是否正确,同时关注程序内在逻辑正确性,且一般代码可见
(2)黑盒测试:只关注输入与输出(数据驱动测试),输入正确对应输出结果正确即判定功能为正确,不关注源代码与内在逻辑
(3)灰盒测试:介于白盒与黑盒之间,多用于集成测试阶段关注输入与输出正确性,同时也关注程序内部运行情况。——Jmeter接口测试进一步学习
(4)功能测试:测试软件的功能是否符合需求,通常采用黑盒测试方法,由测试人员独立执行
(5)界面(UI)测试:测试用户界面是否与产品原型图/UI效果图一致,确保界面美观
(6)安全测试:测试该系统的安全性,防止非法入侵的能力。专业安全性测试
(7)兼容性测试:软件产品与其他软件/硬件兼容的能力,网站-浏览器、app-手机、PC客户端-操作系统、小程序-手机微信
(8)易用性测试:从用户的角度产品是否易于使用
(9)性能测试:通过性能工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试——Jmeter性能测试课程学习
(10)正式验收测试:系统测试的延续,选择的测试用例是系统测试中所执行测试用例的子集
(11)Alpha测试:一种前期的用户测试,软件研发完成后,公司内部组织员工以及部分真实用户,模拟实际操作环境(测试环境)下进行验收测试(内测),测试和开发在场
(12)Beta测试:一种后期的用户测试,软件已通过内测大部分错误已修正即将正式发行,在一个或多个真是环境下发布版本,真实用户进行测试(公测),测试和开发不在场
(13)冒烟测试:对象是每一个新编译的需要正式测试的软件版本,目的是确认软件基本功能正常,可以进行后续的正式测试工作——预测,通过进行后续测试,不通过则打回给开发
(14)回归测试:Bug被修正后或软件功能、环境发生变化后进行的重新测试,确认修改部分不会对其他功能造成影响,不仅要测修复的bug,同时要测与之相关联的功能是否正常
(15)探索性测试:一种测试思维,摒弃复杂的测试计划和测试用例设计过程,强调测试人员的主观能动性,依赖一定的测试经验
(16)自由测试:根据测试者经验对软件进行随机的,自由的,发散性测试

三、笔试面试题
1.什么是软件测试?软件测试的目的是什么?
答:通过人工或技术手段检验软件程序中存在的错误以确保软件的质量

2.软件测试分类有哪些?——重点、概念理解
答:按照代码可见度分为黑盒测试、白盒测试、灰盒测试;按照测试阶段分为单元测试、集成测试、系统测试、验收测试

3.什么是黑盒测试?
答:关注输入和输出结果的正确性,若输入的内容与输出的结果相对应则判定实现功能正确,不关注源代码实现的逻辑性和正确性

4.Alpha测试和Beta测试的区别?
答:这两种都是验收测试阶段做执行的测试,但区别在于,Alpha测试为内部验收测试,有一部分真实用户参与到测试活动中对软件进行使用而反馈问题,开发和测试人员在场。Beta测试则是完成测试后所发行的公共测试版本,参与测试的人员全部为真实用户,测试结果也是真实用户的使用反馈,开发和测试人员不在现场。

posted @   漠W45  阅读(32)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示