软件测试基础

一、测试思维练习
二、测试思维的角度
1、需求测试:定义:需求是一个文档,制作产品的需求书(全称:软件需求规格说明书)案列:二维码可正常识别好友、群聊、公众号、小程序、链接、支付码、场景码,符合微信业务规则。
2、界面测试:定义;界面测试也叫外观测试,也称为ui测试、测试用户界面,布局、风格、文字大小、各个控件位置摆放等
案列:扫码取景框、辅助线、闪光灯、相册选择按钮布局正常,无错位、遮挡、拉伸。 弱光、全屏、异形屏(刘海/挖孔/折叠屏)适配UI正常。
二维码展示页(个人/群/公众号)二维码居中清晰、无模糊、压缩、黑边、花屏。 保存图片、换样式、分享按钮图标正常、状态可区分。
二维码过期、失效、违规时,界面占位图、提示文字、按钮置灰状态正确。加载中二维码有正常loading,无空白白屏。
3、功能测试:定义:是指对产品软件的各个功能进行验证,验证产品是否达到客户的要求。
案例:正常清晰二维码:精准识别、正确跳转对应业务(加好友/进群/小程序/链接/支付)。生成/展示二维码功能、长按识别功能
超长链接二维码、特殊字符二维码、中文二维码识别无乱码、跳转正常。 二维码携带特殊协议(小程序scheme、支付协议)解析精准。
4、性能测试:定义:有一个临界点,慢慢接近突破临界点,查看系统运行状态。
案例:启动速度无卡顿、无ANR/闪退,冷启动、热启动性能正常。普通图片毫秒级识别,大图、高清图无超时卡顿。连续高频扫码(100次+连续操作),不卡死、不闪退、不内存泄漏。
大量解析不同类型二维码,CPU、内存无持续走高。扫码加载不崩溃,弱网给出加载等待,断网给出网络异常提示。
5、安全测试:定义:识别安全漏洞、建立防护机制,保护用户人身安全,设备使用安全,个人隐私与业务员数据安全;
案例:恶意钓鱼二维码、违规域名、诈骗链接,微信具备风控拦截、风险提示。频繁异地扫码、高频扫码触发安全校验、滑块、验证码风控正常。
扫码不会私自上传本地图片、无隐私窃取行为。篡改、拼接、伪造二维码数据无法绕过微信校验逻辑。失效码、过期码无法通过缓存复用以实现复用
6、兼容性测试:定义:验证产品在不同软硬件环境,关联设备,系统版本中等能正常使用。
案例:安卓各机型、iOS各机型(标准版、异形屏、折叠屏、平板)UI与功能正常。低版本系统、最新版系统扫码、生成、保存、跳转均无异常。
手机拍摄、截图、电脑截图、修图软件修改、压缩图片均可兼容识别。
7、可靠性测试:定义:验证产品在不同软硬件环境,关联设备,系统版本中等能正常使用
案例:长时间驻后台、反复前后台切换,扫一扫无闪退、无功能失效。扫码中途锁屏、来电、杀进程、切换APP,重启后功能正常无残留异常状态。
识别失败只会提示失败,不会崩溃、不会错乱跳转、不会脏数据。同一二维码多次识别结果一致,无偶现识别错误、偶现跳转异常。
8、易用性测试:定义:是指是否方便使用,可理解为:易学性、易操作性。
案例:入口清晰:首页扫一扫、长按识别、相册选取路径符合用户习惯。暗光场景自动提示开启闪光灯,人性化提示友好。
失效、过期、无法识别、无网络、权限未开启,提示清晰易懂,引导用户解决问题。按钮点击热区合理,无点击无效、难点击区域。
三、IT理论测试
(一)、硬件和软件
1、硬件:一台电脑是由硬件组成(5部分):
(1)运行器(cpu)
(2)控制器(主板)
(3)存储器(硬盘)
(4)输入设备(键盘,鼠标)
(5)输出设备 (显示器、音箱、耳机)
2、软件:例如:qq、腾讯会议、微信、支付宝、淘宝、抖音等、软件和硬件相互依存,无严格的界限,协同发展
(二)、pc机:指的是个人电脑(小型机、大型机、工作站)
(三)、物理机:就是我们手上的电脑就是物理机 ;虚拟机:相对与实体计算机的称呼,物理机提供给虚拟机的硬件环境,也成为“寄主”
备注:一台物理机上可以安装多台虚拟机
(四)、便携机:就是我们的笔记本
(五)、os就是操作系统 :window10,windows11、macos胸痛、安卓系统、ios系统、linux系统等
(六)、dos命令和图形化界面
1、打开方式:
(1)win+r 键 运行输入:cmd敲回车
(2)输入框
输入:运行找到运行点击运行输入:cmd敲回车
(3)在文件窗口输入:cmd敲回车
2、cmd中(dos命令)
(1)ipconfig ip地址
(2)ipconfig -al 查看所有ip 地址
(3)dir 查看当前目录 下所有文档和文件
(4)cd 文件名 进入文件;cd / 进入到根节点
(5)切换盘符:盘符名+:冒号 如:c:
(6)ping +网站 查看网络连接状态 如:ping www.baidu.com
(7) md 创建文件夹 如:md m1
(8)rd 文件夹 删除文件夹 如:rd m1
(9)cd>文档名 如:cd>hh.txt
(10) del 文档名 删除文档 如:del hh.txt
(11) cls 清屏
(七)、运行命令
1、cmd 进入dos窗口
2、osk 调用软键盘
3、calc 打开计算器
4、notepad 打开记事本
5、regedit 打开注册表等
(八)、共享:共享资源、共享数据、共享信息(分享)
(九)、备份:再拷贝一份;(系统备份、数据备份、环境备份)
(十)、还原:使用备份的数据进行还原 (恢复数据)
(十一)、文件和文件夹、目录、路径
(十二)、web端、app端、h5 、小程序
(1)web端:浏览器与服务器 (bs架构)b:broeser 浏览器;s:server 服务器
(2)app端:客户端与服务器 (cs架构) c:client 客户端;s: server 服务端
(3)h5 ( 移动端网页)html5 移动端适配网页,也可以通过手机浏览器打开
(4)小程序(微信、抖音、支付报)依托于对应的app,微信,支付宝运行,介于原生app和h5之间,由专属的开发框架,免安装,直接扫码即用,受平台的限制
(十三)、单机软件:一般指的不收费的软件,不需要联网的软件
共享软件:一般功能是不收费,但是部分功能是收费,如wps
开源软件:代码公开,软件公开,一般不收费的软件
商业软件:都是收费,把软件当作一个商品来进行交易
(十四)、人员架构(1)ceo 首席执行官(2)cto 首席技术官(3)pm 项目经理职责:管理项目,负责项目进度、工作安排,从开发一款项目软件,直到系统上线、比如:一个影票系统、一个qq
(4)产品经理:职责:负责公司的产品,理解客户的需求,把客户的需求整理成一个需求文档,提供给开发和测试,开发按照需求写代买,测试按照需求写用例,去执行用例
(5)业务或产品:专门了解需求,整理需求
(6)开发经理:职责:管理开发人员,安排开发任务
(7)开发(程序员、码农)开发分为两种:前端开发(少)、后端开发(多)
a、前端开发:对页面的布置、前端代码编写(html、css、js等)
b、后端开发:负责代码逻辑(python、java、php、go、c++等) 前端和后端开发比例:1:6左右
(8)测试经理(测试组长、测试主管)职责:管理测试人员、安排测试任务
(9)测试人员:(学习测试岗位:软件测试工程师、测试工程师、ai测试工程师等)职责:分析需求、编写用例、执行用例
(10)运维职责:负责公司环境、维护环境;环境:测试环境、开发环境、线上环境(生产环境)

四、软件测试之测试分类
(一)、按开发阶段划分
1、单元测试:是指单元是否满足详细设计文件的规格,能正确的执行,主要是对代码测试。单元测试也是最小的测试单位;
在工作中单元测试一般是开发自测,如果需求测试进行单元测试,对测试的技术要求高、必须懂开发语言
理解:单元测试,课本有10个单元,只测试一个单元
2、集成测试:是指2个单元或2个单元以上组合验证是否满足概要设计文档的规格,能正常执行,主要是模块与模块的测试,
理解:课本有10个单元,测试1-5个单元,,比如期中考试
3、系统测试:是指把软件进行正常运行,对整个软件系统进行测试,验证这个系统能正常运行,只要是测试一个整体业务流程
理解:课本有10个单元,测试1-10个单元,,内部测试
4、验收测试:是指站在用户角度去对软件进行测试,验证系统满足用户需求
分为两种:内部验收:alpha测试;外部验收:bete测试
区别:1、人员不一样:内部验收:测试、开发都在,有问题及时解决;外部验收:客户方员工测试,发现问题在反馈给开发,修改,技术人员不集中
2、时间不一样:内部验收时间周期短;外部验收时间周期长
3、地点不一样:内部验收是在自己公司外部焉验收在客户方公司
(二)、按查看代码划分
1、黑盒测试 定义:黑盒测试也是功能测试,测试中把被测试的软件当成一个黑盒子,不关心盒子内部结构、只关心软件的输入数据和输出数据;
比如:计算机:输入1+2,不管你运行,结果=3;
2、白盒测试(代码测试、结构测试、逻辑驱动测试)定义:打开盒子研究源代码和程序的结果
如:ab =c a=1 ,b=2 写错: 是+ 实际结果3;结果:2
3、灰盒测试是介于白盒测试盒黑盒测试之间一种,不仅关注输入,输出的正确性,也关注程序内部结构
(三)、按是否运行划分
1、静态测是指不运行软件本身,仅通过分析和检查代码的语法,结构来检查程序的正确性(需求、设计说明)比如:汽车:展厅
2、动态测试:是指通过运行软件程序,检查运行结果和预期结果的差异,并且分析运行效率,正确性,健壮性等;比如:试驾
(四)、按测试对象划分:1、功能测试;2、性能测试;3、安全测试;4、兼容测试
(五)、按测试的实施划分:1、内部测试;2、外部测试;3、第三方公司测试
(六)、按是否手工执行测试
1、手工测试:是指人一个个用例去执行,然后关注结果和用例对应的预期;缺点:执行效率慢,量大容易出错
2、自动化测试:通过工具或代码代替手工测试
(1)接口自动化测试
(2)ui自动化测试
(3)app自动化测试
(七)、按测试区域划分:1、本地化测试;2、国际化测试
(1)汇率
(2)日期
(3)时差
(4)语言
(5)外观
(6)度量单位
(7)退换货规则

posted @ 2026-08-27 20:39  潘~  阅读(3)  评论(0)    收藏  举报