博客

围绕软件测试、质量工程、敏捷实践与研发效能的长期观察和思考。

博客

虽然一些关键领域的软件产品开发还在采用传统的瀑布模式,今天更多的研发团队在实施敏捷开发模式,开发和测试有更深的融合,独立的测试团队越来越少。例如,微软公司过去显得较为传统,开发人员:测试人员的比例1:1,甚至在Windows操作系统这样的团队,甚至高达1:2,成为软件测试的标杆,过去每当人们谈到软件测试的重要性,必搬出“微软”这块金子招牌。而从2014起微软公司开始转型,开发和测试进行融合,专职测试人员从之前的一万多人降到三百多人,测试 …

阅读全文

之前写了一篇文章:全新亮相:软件测试能力图谱 ,讨论测试人员需要哪些能力,本文经过和测试同仁交流,对软件测试能力进行了更深入分析,形成升级版的能力图谱,对大家更有参考价值。 软件工程师以各种形式存在,完完全全的开发人员或测试人员,也有开发和测试兼顾的工程师。如果软件工程师以开发为主,兼作测试,对专业测试能力要求相对偏低些,侧重测试工具开发或自动化测试,侧重单元测试、接口测试的能力,在系统测试上更多扮演用户角色,加强基本功能测试。如果软件 …

阅读全文

有一阵子,国内不少人提倡“全栈工程师”,有人将“全栈工程师”误解为“需求分析和定义、设计、编程、测试”所需技能融于一身,成为全能工程师。百度百科对它的解释也是“掌握多种技能,并能利用多种技能独立完成产品的人”,侧面印证了这点。大家想想,成为这样的“全栈工程师”很不现实,对大多数人(非天才)来说,单项工作(需求、设计、编程、测试等中的一项)都不一定做得优秀,何况这么多的工作?所以这里存在一个误区。 **国外并没有人提倡“全栈工程师”,而是 …

阅读全文

昨天,杭州传来大消息:这座创新之都要拿出真枪实弹的道路,进行无人自动驾驶测试。太棒!这是继深圳、上海之后,又一个城市进行无人驾驶汽车测试。居然,有媒体人说“快得让人胆颤心惊!” 今天,我打电信10000号时,体验和以往完全不同,不再按“1、2、3、…”这样的数字键,而是和机器人对话,直接说“宽带报修”,那边机器人说;“您刚才保修过一次,还要继续吗?”,我说“确认”…。 之前,我们也被许多事件感到震惊,甚至恐惧: …

阅读全文

在目前比较流行的敏捷开发模式(如极限编程、Scrum方法等)中,推崇“测试驱动开发(Test Driven Development,TDD)”——测试在先、编码在后的开发实践。TDD有别于以往的“先编码、后测试”的开发过程,而是在编程之前,先写测试脚本或设计测试用例。TDD在敏捷开发模式中被称之为“测试优先的编程(test-first programming)”,而在IBM Rational统一过程(Rational Unified …

阅读全文

春节期间由于去新西兰旅游,所以公众号前段时间打烊了,没有发布新文章。虽然现在已回到国内,还沉浸在新西兰那无与伦比的自然风光中(现在面对的只是照片)。 在狗年谈起软件测试,首先想到的是微软公司著名的实践之一——“吃你自家的狗粮”( Eating your own dog food,干脆用一个新词Dogfooding),甚至维基百科都为它撰写了词条,详细介绍这类实践: …

阅读全文

在列出DevOps 工具链之前,介绍一下什么是DevOps,虽然DevOps这个概念现在还没有标准的定义,但我们可以追溯一下其过去九年的历史发展过程(从2009年~2017年),列出几个相对明确又有所不同不同的定义,从而能够比较全面了解DevOps的内涵。 【2009】 DevOps是一组过程、方法与系统的统称,用于促进开发、技术运营和QA部门之间的沟通、协作与整合; 【2011】快速响应业务和客户的需求,通过行为科学改善IT各部门之间 …

阅读全文

今天,咱们见证了DevOps被迅速采用,因为企业必须对市场变化作出更快的响应。借助DevOps,企业能够加快产品上市的时间,更好地响应并满足了不断变化的客户需求,帮助企业获得竞争优势和业务的快速增长。 DevOps可以看做是敏捷开发模式的延伸,将持续集成(CI)、持续部署、持续交付(CD)扩展到运维,打通开发与运维之前的壁垒,在整个生命周期中消除传统的孤岛,促进研发与运维的协作,从而缩短软件产品交付周期,提高软件服务质量。 DevOps …

阅读全文