一、待学技能
- 能对app、web项目实现功能测试
- 能使用工具或代码针对接口进行测试
- 能使用工具或代码针对实现性能测试
- 能使用工具或代码针对实现自动化测试(UI、接口)
二、软件测试基础
使用技术手段验证软件是否满足需求
1.常见的软件测试技能
- 功能测试:对软件功能进行测试(手工测试)
- 自动化测试:使用代码或工具代替人工验证项目功能
- 接口测试:针对模块与模块或系统与系统之间数据请求地址进行测试(主流)
- 性能测试:模拟多人使用软件,查找服务器缺陷
2.常见软件测试分类
- 按测试阶段划分
· 单元测试:针对程序源代码进行测试(开发自测)
· 集成测试:又称接口测试,针对模块之间访问地址进行测试
· 系统测试:对整个系统进行测试包括功能、兼容、文档等测试
· 验收测试:主要分为内测、公测,使用不同人群发掘项目缺陷 - 按代码可见度划分
· 黑盒测试:看不见源代码,主要对程序功能进行测试
· 灰盒测试:看见部分代码,主要对程序接口进行测试(集成测试)
· 白盒测试:看见全部代码,主要对程序源代码进行测试(单元测试) - 扩展·总结:
- 系统测试和黑盒测试核心为功能测试
- 集成测试和灰盒测试又称接口测试
- 单元测试和白盒测试是对代码进行测试
- 自动化测试多属于黑盒测试(功能测试)
- 性能测试、安全测试归属专项测试
- 扩展·测试策略
冒烟测试:大规模执行测试前,先针对程序主功能进行验证,保证程序具备可测性。
面试题:提测标准是什么?—冒烟测试通过。测试之前要做什么?—冒烟测试
3.模型
- 质量模型:提供测试设计的不同角度视野和验证方向(软件质量模型ISO/IEC 25010)
针对任何软件或硬件,测试需要覆盖的方面
- 功能性:功能满足需求
- 性能效率:性能满足实际需求
- 兼容性:软件能与主流硬件和软件兼容
- 易用性:便于使用(*)
- 可靠性:性能和功能应用可靠
- 信息安全:信息在传输或者存储过程的安全程度
- 可维护性:便于维护
- 可移植性:具备迁移和便捷性
重点:功能、性能、兼容、易用、安全
- 测试模型:测试处于什么环节
w模型简称“双v”模型,即以开发主导的一个“v”和以测试主导的一个“v”
软件开发流程、软件测试在开发流程中的作用
开发流程:需求分析、概要设计、详细设计、编码、集成、实施、交付
测试流程:单元测试、集成测试、系统测试、验收测试
- 面试题:先测UI功能还是接口?—先测接口(集成测试)
- 优点:测试伴随整个产品开发周期,测试对象不仅是程序还有需求、设计文档;测试介入较早,及早发现问题,降低修复成本
- 面试题:测试从什么时候开始?—有需求文档测试就开始了。根据需求文档提取需求,根据需求设计测试点,根据测试点编写用例覆盖测试点。交付时执行测试。
- 缺点:实施较复杂,难度大,对于需求阶段和设计阶段的测试设计要求较高
4.软件测试流程
- 需求分析:确保各部门需求理解一致(前置: 阅读需求分析文档,记录不明确之处)
- 计划编写:测什么、谁来测、怎么测(目标范围、人员进度安排、测试策略、测试工具)
- 用例设计:设计验证项目是否符合需求的操作文档
- 用例执行:项目模块开发完成开始执行用例文档实施测试
- 缺陷管理:对缺陷进行管理的过程(提交->验证->关闭)
- 测试报告:实施测试结果文档(测试目标、测试过程、缺陷统计、缺陷分析、测试总结)
5.测试用例
- 用例:用户使用的案例
- 什么是测试用例:是为测试项目而设计的执行文档
- 考虑点:质量模型(功能、性能、兼容、易用、安全)
- 测试用例的作用:防止漏测、实施测试的标准
- 用例设计编写格式
格式(八大要素):
· 用例编号:项目+模块+编号
· 用例标题:预期结果+操作步骤
· 模块/项目:所属项目或模块
· 前置条件:要执行此条用例,有哪些前置操作
· 优先级:表示用例的重要程度或者影响力P0-P4(P0最高)
· 测试步骤:描述操作步骤
· 测试数据:操作的数据,没有的话可以为空
· 预期结果:期望达到的结果 - 如何设计用例:不同场景有不同的设计方法
总结
【黑马测试】测试基础1-19