测试常备知识和技能
测试具体工作
- 搭建测试环境
- 撰写测试用例
- 执行测试用例
- 写测试计划,测试报告
- 测试,并提交BUG表单
- 跟踪bug修改情况
- 执行自动化测试,编写脚本,执行,分析,报告
- 进行性能测试,压力测试等其他测试,执行,分析,调优,报告
测试一般流程
- 需求分析
- 测试计划
- 测试设计
- 测试执行
- 测试评估
- 测试总结
- 产品维护
产品业务知识
- 所测产品功能
- 所测产品用户场景
- 安全测试方法
测试相关技能
- 业务分析能力,分析整体业务流程、分析被测业务数据、分析被测系统架构、分析被测业务模块、分析测试所需资源、分析测试完成目标;
- 掌握测试基本流程、常规用例设计方法;
- 管理、软件质量评估能力;
- 常用测试工具:TestLink、PostMan、BugZilla、仪表等;
- 测试框架:JUnit、RobotFramework等;
- 自动化测试知识;
- 简单项目管理知识;
- 编程语言基础:shell、Python、Java、C/C++、Mysql/Sqllite等;
- 计算机基础知识,Linux、计算机网络等;
- 软件测试基础理论知识,如黑盒测试、白盒测试等。
测试类型
- 功能
- 性能
- 可靠性
- 易用性
- 兼容性
- 可维护性
- 安全性
- 可移植性
测试常用方法
(1)黑盒测试
黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试。它着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。常用的黑盒测试方法有:
- 等价类划分法
- 边界值分析法
- 错误推测法
- 因果图法
- 场景设计法
- 判定表驱动分析法
- 正交实验设计法
- 功能图分析法
(2)白盒测试
白盒测试也称为结构测试或逻辑驱动测试,是针对被测单元内部是如何进行工作的测试。检查程序内部逻辑结构,对所有的逻辑路径进行测试,是一种穷举路径的测试方法。白盒测试需要遵循的原则有:保证一个模块中的所有独立路径至少被测试一次、 所有逻辑值均需要测试真(true)和假(false)两种情况、 检查程序的内部数据结构,保证其结构的有效性、 在上下边界及可操作范围内运行所有循环。常用白盒测试方法:
- 语句覆盖
- 判定覆盖
- 条件覆盖
- 判定/条件覆盖
- 条件组合覆盖
- 路径覆盖
区分单元测试、集成测试、系统测试、验收测试、回归测试
- 单元测试:完成最小的软件设计单元(模块)的验证工作,目标是确保模块被正确的编码,通常情况下是白盒的。
- 集成测试:通过测试发现与模块接口有关的问题,目标是把通过了单元测试的模块拿来,构造一个在设计中所描述的程序结构。
- 系统测试:是基于系统整体需求说明书的黑盒类测试,针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不相符合或与之矛盾的地方。
- 回归测试:回归测试是指在发生修改之后重新测试先前的测试用例以保证修改的正确性。软件产生新版本,都需要进行回归测试,验证以前发现和修复的错误是否在新软件版本上再次出现。
- 验收测试:相关的用户或独立测试人员根据测试计划和结果对系统进行测试和接收。它让系统用户决定是否接收系统。
α测试和β测试
α测试和β测试是属于验收测试的方法。
- α测试:在受控的环境中进行,由用户在开发者的场所进行,并且在开发者对用户的指导下进行测试,开发者负责记录发现的错误和使用中遇到的问题。
- β测试:在开发者不能控制的环境中的真实应用,由软件的最终用户们在一个或多个客户场所下进行,由用户记录在测试中遇到的一系列问题,并定期报给开发者。