软件
何为软件:
控制计算机硬件工作的工具
软件基本组成:
客户端,服务器
软件产生过程:
需求产生(需求方,客户,用户,产品经理)----->需求文档(产品经理)----->设计效果图(UI设计师)----->产品开发(研发人员)----->产品测试(测试人员)----->部署上线
认识软件测试
何为软件测试:
使用技术手段验证软件是否满足使用需求
软件测试目的:
减少软件缺陷(BUG),保障软件质量
测试主流技能
1.功能测试,验证程序的功能是否满足 需求
2.自动化测试,用代码或工具代替手工,对项目进行测试(效率高)
3.接口测试,用代码或工具对服务端提供的接口进行测试
4.性能测试,用代码或工具模拟多人使用软件,查找软件服务器缺陷
测试分类
1.按测试阶段划分
单元测试、集成测试、系统测试(针对程序功能、非功能进行测试)、验收测试
2.按代码可见度划分
黑盒测试(不关注源代码,针对程序UI(用户、接口,即界面)功能进行测试)(系统测试)
灰盒测试(针对程序部分代码进行测试,即接口测试)(集成测试)
白盒测试(针对程序源代码进行测试)(单元测试)
质量模型
质量模型:衡量一个优秀软件的维度
包括8个维度:功能性、性能、兼容性、易用性、可靠性、安全性、可维护性、可移植性
功能性:功能数量、功能正确实现、错误处理情况
性能:1.服务器每秒处理请求数。
2.服务器硬件配置是否满足。
兼容性:浏览器(谷歌、IE、火狐、欧朋、苹果,五大内核)
操作系统(win系统:win7、win8、win10)
手机:分辨率、品牌、系统、网络、其他
易用性:简洁、友好、流畅、美观
可靠性:无响应、卡顿(响应时间慢)、死机(系统崩溃)
安全:信息传输、信息存储
可移植性:网站数据迁移
可维护性:方便维护
测试流程
1.需求评审
角色:产品经理、开发、测试。
确保各部门需求理解一致,知道被测项目有哪些功能模块
2.计划编写
测什么,谁来测,怎么测
3.用例设计
验证项目是否符合需求的操作文档
4.用例执行
项目模块开发完成开始执行用例文档实施测试
5.缺陷管理
对缺陷进行管理的过程
6.测试报告
实施测试结果文档
测试用例
何为用例:
用户使用的案例
何为测试用例:
为测试项目而设计的执行文档
测试用例的作用:
1.防止漏测
2.实施测试的标准
编写测试用例:
1.用例设计编写格式:
用例编号、用例标题、项目/模块、优先级、前置条件/预置条件、测试步骤、测试数据、预期结果(+不同角色隐性结果)
2.格式说明:
案例:
等价类划分
说明:在所有测试数据中,具有相同特征的数据集合进行划分
分类:
有效等价类:满足需求的数据集合
无效等价类:不满足需求的数据集合
步骤: 1.明确需求
2.确定有效和无效等价类
3.提取数据编写测试用例
案例1:
验证QQ账号的合法性
要求:6---10位自然数
案例2:
适用场景:
针对:需要有大量数据测试输入,但是没法穷举测试的方法。
eg:输入框,下拉列表,单选复选框
典型代表:页面的输入框类测试