1.常见测试管理工具
测试管理工具是指在软件开发过程中,对测试需求、计划、用例和实施过程进行管理、对软件缺陷进行跟踪处理的工具。通过使用测试管理工具,测试人员或开发人员可以更方便的记录和监控每个测试活动、阶段的结果、找出软件的缺陷和错误,记录测试活动中发现的缺陷和改进建议。
测试管理工具功能(记录,规范,统计,分许,回溯,改进)
测试需求管理、测试用例管理、测试过程管理(计划、任务等)、缺陷管理、报表管理、权限管理
常见的工具
JIRA,tapdbugzilla(开源):,
2.禅道安装
1.下载网址:禅道下载
2.选择stable版本
3.下载完毕,复制到根目录(必须在根目录),解压
解压完毕:
4.点击“启动”,第一步点击“服务”,配置下面两个端口号,配置成自己不可用的端口,4,把下面的对号去掉
5.复制网址,到浏览器,直接打开
3. 禅道功能-项目管理
禅道项目管理软件的主要功能列表
- 产品管理:包括产品、需求、计划、发布、路线图等功能;
- 项目管理:包括项目、任务、团队、版本、燃尽图等功能;
- 质量管理:包括bug、测试用例、测试任务、测试结果等功能;
- 文档管理:包括产品文档库。项目文档库、自定义文档库等功能;
- 事务管理:包括todo管理,我的任务、我的Bug、我的需求、我的项目等个人事务管理功能。
- 组织管理:包括部门、用户、分组、权限等功能。
- 统计功能:丰富的统计表。
- 搜索功能:强大的搜索,帮助您找到相应的数据。
- 扩展机制,几乎可以对禅道的任何地方进行扩展。
- api机制,所见皆API,方便与其他系统集成。
引用
禅道官方文档
4.禅道使用的基本流程和产品、研发、测试之间的三权分立
禅道管理软件中,核心的三种角色:产品经理、研发团队和测试团队,这三者之间通过需求进行协作,实现了研发管理中的三权分立。其中产品经理整理需求,研发团队实现任务,测试团队则保障质量,其三者的关系如下图:
基本流程如下:
-
产品经理创建产品
-
产品经理创建需求
-
项目经理创建项目
-
项目经理确定项目要做的需求
-
项目经理分解任务,指派到人。
-
测试人员测试,提交bug。
5.禅道管理的具体流程
- 产品线
- 产品经理要与运营或者外部用户沟通,完成需求原型;
- 建立产品,对产品整理研发计划并整理每个计划中需要完成的需求;
- 项目线
- 项目经理进行创建项目,关联到产品,确定本次项目中需要完成的产品需求
- 组建项目团队(研发、测试人员),要选择哪些人可以参与到这个项目中来;
- 确定项目要完成的需求列表:关联产品、关联需求;
- 组织进行任务的分解:需要将所有的任务都分解出来,任务分解的粒度是越小越好;
- 每天要召开站立会议,沟通解决问题,会议时间要控制在15分钟之内;
- 要通过燃尽图了解项目的进度;
- 项目结束之后要召开演示会议和总结会议
- 开发线
- 参加项目计划会议,分解任务,资源领取自己喜欢的任务;
- 每日站会(敏捷思想scrum):昨天的进度,遇到的问题,今天的安排;
- 更新任务状态,生成燃尽图;
- 打包创建一个可用的版本提测;
- 当版本创建完毕之后,就是申请测试;
- 如果有bug的话,要去解决bug,最后生成文档;
- 测试线
- 维护bug视图模块:以便更好的组织管理bug;
- 创建测试用例:禅道中的测试用例,彻底的将测试用例步骤分开,每一个测试用例都有若干个步骤组成,每一个步骤都可以设置自己的预期值。这样可以非常方便- - 进行测试结果的管理和Bug的创建;
- 管理测试版本:当开发人员申请测试之后,会生成相应的测试版本给测试人员。这时候测试人员要做的就是为这个测试版本关联相应的测试用例。如果这个测试任务需要多人来配合完成,则需要将相应的用例指派给相应的人员来进行完成,或者自己领取相应的测试用例;
- 执行用例:如果一个用例执行是失败的,就直接转Bug;最后是测试版本生成测试报告;
- 提交bug,如果开发人员解决bug之后了,再次验证bug,最后是验证bug,如果没有问题,进行关闭;
- 有明确的客户:相关人员为客户演示(演示会议)
- 已上线:研发测试参加总结会议,汇总本次开发过程中的问题以及遗留情况形成新的改进计划,将改进计划纳入下次的迭代中
5.敏捷开发及scrum简介
一、敏捷开发
我们比较熟知的软件项目管理方法是瀑布。其基本流程是需求-> 设计->开发->测试。基本假设只要把每一个环节都做正确,那么终得到的结果也是正确的。瀑布开发有非常成功的案例,比如微软。但从总体来讲,瀑布项目失败率比较高。国外的软件先行者们针对瀑布开发中暴露出来的问题进行了一系列的探索、思考和总结,终提出了Agile的概念,中文翻译为敏捷开发。敏捷开发有很多种方式,其中scrum是比较流行的一种。
二、scrum
2.1 scrum里面的角色
scrum由product owner(产品经理)、scrum master(项目经理)和team(研发团队)组成。
其中product owner负责整理user story(用户故事),定义其商业价值,对其进行排序,制定发布计划,对产品负责。
scrum master 负责召开各种会议,协调项目,为研发团队服务。
研发团队则由不同技能的成员组成,通过紧密协同,完成每一次迭代的目标,交付产品。
2.2 迭代开发
与瀑布不同,scrum将产品的开发分解为若干个小sprint(迭代),其周期从1周到4周不等,但不会超过4周。参与的团队成员一般是5到9人。每期迭代要完成的user story是固定的。每次迭代会产生一定的交付。
2.3 scrum的基本流程
scrum的基本流程如上图所示:
- 产品负责人负责整理user story(需求),形成左侧的product backlog。
- 发布计划会议:product owner负责讲解user story,对其进行估算和排序,发布计划会议的产出就是制定出这一期迭代要完成的story列表,sprint backlog。
- 迭代计划会议:项目团队对每一个story进行任务分解,分解的标准是完成该story的所有任务,终每个任务都有明确的负责人,并完成工时的初估计。
- 每日例会:每天scrum master召集站立会议,团队成员回答昨天做了什么今天计划做什么,有什么问题。
- 演示会议:迭代结束之后,召开演示会议,相关人员都受邀参加,团队负责向大家展示本次迭代取得的成果。期间大家的反馈记录下来,由po整理,形成新的story。
- 回顾会议:项目团队对本期迭代进行总结,发现不足,制定改进计划,下一次迭代继续改进,已达到持续改进的效果。
6.禅道与scrum对应
禅道在设计的时候,基础框架是基于scrum的,同时又补充完善了测试,文档,发布,计划等功能。肯定有同学会问,是不是我使用禅道,就必须是用敏捷。答案当然是否定的,您完全可以使用禅道来进行瀑布式管理,也可以使用的很好。正是基于这一点考虑,我们在设计禅道的时候,都是采用了比较中性的概念,而不是scrum里面特有的概念。下面让我们来看下禅道和scrum的对应关系。