软件测试入门知识
这是我开始自学软件测试的第一天,总结了学到的理论知识与大家分享!
什么是软件
软件就是控制计算机硬件工作的工具,例如微信(聊天)、京东(电商)、window10(操作系统)。
软件基本组成
页面客户端、代码服务器、数据服务器
软件产生过程
需求产生—>需求文档–>设计效果图–>产品开发–>产品测试–>部署上线
1.需求方(客户、用户)向产品经理提出需求
2.产品经理编写需求文档
3.UI设计师来设计效果图
4.公司研发人员进行产品开发
5.公司测试人员进行产品测试
6.解决基本问题,进行部署上线
什么是软件测试
软件测试:使用技术手段验证软件是否满足使用需求
软件测试目的
减少软件缺陷即bug,保证软件质量
测试分类
功能测试:测试主要验证程序的功能是否满足需求
自动化测试:使用代码或者工具代替手工,对项目进行测试
接口测试:使用代码或工具验证程序中的接口是否使用正常
性能测试:模拟多人使用软件,查找服务器缺陷
1.按测试阶段划分
单元测试:针对程序源代码进行测试
集成测试:又称接口测试,针对模块之间访问地址进行测试
系统测试:对整个系统进行测试,包括功能、兼容、文档等测试,针对功能与非功能进行测试
验收测试:主要分为内测、公测,使用不同的人群来发掘项目缺陷(我觉得就像王者荣耀有内测版,使用不同人群来测试)
2.按代码可见度进行测试
黑盒测试:不关注源代码,根据UI功能进行测试(源代码不可见、UI功能可见)
灰盒测试:针对程序部分代码进行测试,多为接口测试(部分源代码可见,功能不可见)
白盒测试:针对程序源代码进行测试(全部代码可见,UI功能不可见)
一般测试做的是黑盒测试和灰盒测试。
模型
模型是衡量一个优秀软件的维度,主要从功能性、性能、兼容性(浏览器、操作系统、手机)、易用性(简洁、友好、流畅、美观)、可靠性(无响应、死机、卡顿)、安全、可维护性、可移植性这几个方面进行判断。
测试流程
1.需求评审:确保各部门需求理解一致,知道被测项目有哪些功能模块
2.计划编写:测什么、谁来测、怎么测
3.用例设计:验证项目是否符合需求的操作文档
4.用例执行:项目模块开发完成,开始执行用例文档实施测试
5.缺陷管理:对缺陷进行管理的过程
6.测试报告:实施测试结果文档
测试用例
1.用例:用户使用的案例
2.测试用例:是为测试项目而设计的执行文档
3.测试用例设计编写格式-说明:
- 用例编号:项目_模块_编号
- 用例标题:预期结果(测试点)
- 模块/项目:所属项目或模块
- 优先级:表示用例的重要程度或者影响力P0~P4(P0最高)
- 前置条件:要执行此条用例,有哪些前置操作
- 测试步骤:描述操作步骤
- 测试数据:操作的数据,没有的话可以为空
- 预期结果:期望达到的结果
针对穷举场景设计测试用例
方法:等价类划分
说明:
有效等价:符合需求范围之内的为有效
无效等价:符合需求范围之外的
用法:有效等价取1个值,每个无效集合取1个