敏捷项目的软件测试

简介:

我们的项目实行敏捷已经近两年了,关于敏捷我相信大家已经比较熟悉了,我今天就先谈谈在敏捷的项目里如何实行测试的工作。

敏捷的项目对测试的影响

  • 文档少,因此难以只是依赖文档来设计测试。
  • 短迭代,需要更短的时间完成测试的工作。
  • 频繁的变化,需要测试更具有探索性和适应性。

敏捷项目的正确测试观念

  • 项目是以结果为导向的,所以测试同样是结果导向。
  • 不以发现缺陷多少为目标。
  • 以不断提高软件质量为目标。
  • 测试人员的作用是帮助开发人员不断提高软件的质量,是协助性的。
  • 测试人员不是批判性的。
  • 测试人员能够尽可能的做能够做的工作,尽可能的早工作。
  • “等待”在敏捷开发、敏捷测试范畴里已是一种错误概念。

敏捷测试的管理

  • 敏捷项目的测试没有严格的角色。人人都是测试。
  • 以测试任务为导向。测试任务即可以是开发来做,也可以是测试人员来做。
  • 相同的质量目标。开发和测试有着同一个质量目标,因此也承担着同样的责任。
  • 关注质量的提升,测试周期与开发同步。
  • 要有全局观,不只是专注于发现缺陷。
  • 为回滚做准备,本次迭代发布失败,可安全回滚至旧版本。
  • 分享测试知识。
  • 建立缺陷库,指导开发人员避免再次发生同样缺陷。

敏捷测试的执行

  • 关注和推动单元测试。
  • 持续改进自动化测试(因为软件的变化,已经对产品的深入了解)
  • 短文档(测试用例可以不写,测试计划列测试点,测试类型,质量标准即可)。
  • 对新增的或者引起变化的地方(可询问开发人员协助)采取探索性测试。
  • 对稳定的部分添加自动化测试。

我们的项目之前的测试开发比例是1比5,质量基本达到客户的要求,为什么1比5可以,因为我说过,开发人员是可以做测试的工作的。现在觉得唯一有不足的地方是对稳定的地方进行自动化的回归测试。还有,我希望在自动化的探索性测试上有所进步。

最后,我还说一点是,我看到很多项目靠加班,不会休息的团队是不健康的团队。其实,项目往往不是短期行为,通常一个产品的至少需要半年努力和投入,长

时间的超负荷运转会使得工作效率低,身体透支等严重后果。项目中后期往往强度会比前期更大,这个时候,人员倒下和效率低不是一件好事情。所以,如果你的项目还要长期发展,应该帮助团队认识到轻松的团队氛围,张弛有度的工作安排是项目成功的最好方式。

当然,不加班,不代表上班时间不好好干。我们要求就是8小时以内,每周40小时。

最后,打个小广告,招聘软件测试人员,要求:2年以上web软件测试经验,有自动化测试经验更佳,熟悉web service测试者更佳,热爱敏捷过程。有意者发邮件至wangdeshui@gmail.com  msn:jack_wangds@hotmail.com

王德水 写于2010年1月4日23点 北京

本文转自敏捷的水博客园博客,原文链接http://www.cnblogs.com/cnblogsfans/archive/2010/01/04/1639245.html如需转载请自行联系原作者


王德水

相关文章
|
4月前
|
消息中间件 测试技术
项目环境测试问题之规范执行器的异常处理如何解决
项目环境测试问题之规范执行器的异常处理如何解决
|
19天前
|
网络协议 关系型数据库 应用服务中间件
【项目场景】请求数据时测试环境比生产环境多花了1秒是怎么回事?
这是一位粉丝(谢同学)给V哥的留言,描述了他在优化系统查询时遇到的问题:测试环境优化达标,但生产环境响应时间多出1秒。通过抓包分析,发现MySQL请求和响应之间存在500毫秒的延迟,怀疑是网络传输开销。V哥给出了以下优化建议:
|
2月前
|
测试技术
自动化测试项目学习笔记(五):Pytest结合allure生成测试报告以及重构项目
本文介绍了如何使用Pytest和Allure生成自动化测试报告。通过安装allure-pytest和配置环境,可以生成包含用例描述、步骤、等级等详细信息的美观报告。文章还提供了代码示例和运行指南,以及重构项目时的注意事项。
211 1
自动化测试项目学习笔记(五):Pytest结合allure生成测试报告以及重构项目
|
2月前
|
测试技术 Python
自动化测试项目学习笔记(四):Pytest介绍和使用
本文是关于自动化测试框架Pytest的介绍和使用。Pytest是一个功能丰富的Python测试工具,支持参数化、多种测试类型,并拥有众多第三方插件。文章讲解了Pytest的编写规则、命令行参数、执行测试、参数化处理以及如何使用fixture实现测试用例间的调用。此外,还提供了pytest.ini配置文件示例。
35 2
|
2月前
|
测试技术 Python
自动化测试项目学习笔记(二):学习各种setup、tearDown、断言方法
本文主要介绍了自动化测试中setup、teardown、断言方法的使用,以及unittest框架中setUp、tearDown、setUpClass和tearDownClass的区别和应用。
65 0
自动化测试项目学习笔记(二):学习各种setup、tearDown、断言方法
|
2月前
|
人工智能 自动驾驶 机器人
【通义】AI视界|苹果自动驾驶汽车项目画上句号:加州测试许可被取消
本文精选了24小时内的重要科技新闻,包括Waymo前CEO批评马斯克对自动驾驶的态度、AMD发布新款AI芯片但股价波动、苹果造车项目终止、Familia.AI推出家庭应用以及AI逆向绘画技术的进展。更多内容请访问通义官网体验。
|
2月前
|
前端开发 JavaScript 应用服务中间件
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
本文是一篇详细的教程,介绍了如何在Linux系统上安装和配置nginx,以及如何将打包好的前端项目(如Vue或React)上传和部署到服务器上,包括了常见的错误处理方法。
385 0
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
|
2月前
|
Java Maven
Maven 项目测试
接下来我们要学习如何构建和测试这个项目。
43 5
|
2月前
|
JavaScript
vue尚品汇商城项目-day07【55.编码测试与打包发布项目】
vue尚品汇商城项目-day07【55.编码测试与打包发布项目】
31 3
|
2月前
|
监控 Java Maven
springboot学习二:springboot 初创建 web 项目、修改banner、热部署插件、切换运行环境、springboot参数配置,打包项目并测试成功
这篇文章介绍了如何快速创建Spring Boot项目,包括项目的初始化、结构、打包部署、修改启动Banner、热部署、环境切换和参数配置等基础操作。
148 0
下一篇
无影云桌面