测试基础
什么是测试?
通过手工或者相关工具,对被测对象进行测试操作,从而验证实际与预期结果是否存在差异
被测对象:
1.代码
2.文档
3.用户手册
测试的主要工作
-
检查代码,评审开发文档
-
进行测试设计,写作测试文档,测试计划,测试方案,测试用例等
-
执行测试,发现软件缺陷,提交缺陷报告,并追踪缺陷修复的过程
测试用例
为特定目的而设计的一组测试输入,执行条件和预期的结果,以使测试满足某个特定需求,通过大量测试用例来检验软件的运行效果,他是指导测试工作的重要依据
测试用例的组成
-
用例编号:产品名字 测试阶段
-
测试项目:对应的功能模块
-
测试标题:对测试点进行细化得出
-
重要级别:高/中/低
-
预置条件:需要满足一定条件,否则用例无法执行
-
测试输入:需要加工的输入信息,根据具体情况设计
-
操作步骤:明确给出每个步骤的描述,执行人员根据步骤执行工作
-
预期结果:根据预期输出对比实际结果,判断被测对象是否符合需求
-
实际结果:根据实际结果,填写报告
测试工具
1.禅道
2.selenium
3.jmeter
4.抓包工具:fiddler,charles(mac)
5.postman
6.appium
7.jenkins
开发/测试模型
开发模型:
1.瀑布模型,阶段划分比较清晰
2.快速原型模型 首先建立一个模型,让用户提供意见,修改原型,最后依次展开开发
3.敏捷开发模型 小步快跑节奏,开发节奏
4.螺旋模型 唯独增加风险控制
测试模型:
1.V模型,跟瀑布模型保持一致
2.W模型,弥补V模型缺点
3.H模型(了解)
敏捷开发
以人为核心,迭代,循序渐进的开发方法
为什么说以人为核心?
瀑布开发模型以文档为驱动,开发人员都是依据文档进行开发,敏捷开发只写必要文档,尽量少写文档,注重的是人与人之间,面对面的交流
什么是迭代?
把一个复杂,开发周期长的开发任务,分解为很多小周期可完成的任务,这样的一个周期就是一次迭代的过程,同时每一次迭代都可以生产或开发出一个可以交付都软件产品
敏捷开发
1.产品负责人将整个产品设计成产品待办列表
2.召开产品迭代计划会议,确定哪些需求是要在第一个迭代中去完成的,评估迭代的时间(一般为2-4周),得到对应的迭代周期任务列表,另外,该会议提倡所有团队人员参与
3.把迭代的功能需求写在便签纸,贴在任务墙,让大家认领分配(任务墙就是把未完成,进行中,已完成的工作状态贴到墙上,便于观察任务的状态)
4.举行每日站立会议,每人在会议上总结昨天做的事,遇到什么问题,任务看板保证每个人都能看见,每个人发言完成后,要走到任务板前更新自己的燃尽图,今天要做的事情,会议时间控制在15分钟左右
5.评审会议,在迭代完成时举行,向客户演示自己完成的软件产品,并得到客户的反馈,我们要不断让用户看到产品的模型,加以引导,这样用户才会逐渐形成对产品和需求有清晰的认识