What is 测试金字塔?】的更多相关文章

我的女朋友是一名测试工程师,但她之前却不知道测试金字塔的概念,为此我曾经在家里的白板上画了一个图一层一层给她讲解过.我和同事在给团队面试测试和开发岗位时,也会必问到这个问题,想到可能有很多开发童鞋都不知道,这里我就用一篇推文给大家科普一下. 一.传说中的金字塔 我们都知道,针对项目的测试有很多分类,比如单元测试.集成测试.组件测试.端到端测试 以及 探索性测试等.那么,测试金字塔其实就是给我们的一个指导,它指导我们要在不同类型的测试工作投入多少的精力是最合适的. 废话不多说,先上图: 测试金字塔…
Mike Cohn 提供了一个名为 Test Pyramid 的模型.这描述了软件开发所需的自 动化测试类型. 根据金字塔,第一层的测试数量应该最高.在服务层,测试次数应小于单元测试 级别,但应大于端到端级别.…
原文地址:https://developer.android.com/training/testing/fundamentals.html 用户在不同的级别上与你的应用产生交互.从按下按钮到将信息下载到他们的设备上,因此,你应该在迭代开发应用程序时测试各种用例和交互. 使用迭代开发工作流 当你的应用程序进行扩展时,你可能会发现需要从服务器获取数据,与设备的传感器进行交互,可以还需要访问本地存储,或呈现复杂的用户界面.应用程序的多样性需要一个全面的测试策略. 在迭代开发一个新的特性时,首先需要编写…
UI测试在Android平台上一直都是一个令人头痛的事情, 由于大家平时用的很少, 加之很多文档的缺失, 如果很多东西从头摸索,势必踩坑无数. 自Android24正式淘汰掉了InstrumentationTestCase(位于android.test包), 推出Espresso(位于android.support.test包), Google一直致力于降低UI测试的门槛. 了解测试金字塔的同学可能知道,UI测试属于功能测试(Functional Test), 或者按照其他的划分也属于集成测试(…
原文地址:https://developer.android.com/training/testing/fundamentals.html 用户在不同的级别上与你的应用产生交互.从按下按钮到将信息下载到他们的设备上,因此,你应该在迭代开发应用程序时测试各种用例和交互. 使用迭代开发工作流 当你的应用程序进行扩展时,你可能会发现需要从服务器获取数据,与设备的传感器进行交互,可以还需要访问本地存储,或呈现复杂的用户界面.应用程序的多样性需要一个全面的测试策略. 在迭代开发一个新的特性时,首先需要编写…
在我们测试工作中,常常遇到这样的问题:开发与测试团队分属不同的不同(部门隔离.沟通不畅),质量职责划分不清(出现bug往往都是测试人员背锅),需求的不确定和易变性(需求不断变化导致代码不停更新.产品重构等),项目时间紧(互联网项目的需求对上线时间有更严格的要求)...测试团队必须纠结这样一个问题:如果在质量保证与上线时间之间找平衡,我们一方面需要尽可能的希望找出产品的“所有”bug,一方面又要保证需求能如期上线,对于一个测试团队来说,直观上只有两种方法来解决这个问题:扩充我们的测试队伍(人多力量…
Golang项目的测试实践 最近有一个项目,链路涉及了4个服务.最核心的是一个配时服务.要如何对这个项目进行测试,保证输出质量,是最近思考和实践的重点.这篇就说下最近这个实践的过程总结. 测试金字塔 按照Mike Cohn提出的"测试金字塔"概念,测试分为4个层次 最下面是单元测试,单元测试对代码进行测试.再而上是集成测试,它对一个服务的接口进行测试.继而是端到端的测试,我也称他为链路测试,它负责从一个链路的入口输入测试用例,验证输出的系统的结果.再上一层是我们最常用的UI测试,就是测…
现在测试行业如果不会开发语言的话是很难找到工作的,即使是一些功能测试的岗位也会要求代码语言作为技术储备,因为如果做自动化测试或者测试工具脚本开发或者接口测试等都离不开开发语言,那作为测试如果没有代码经验,如何选择一门语言呢? 市面上一些培训测试开发的机构一般都会选择Python作为测试的脚本语言,原因不外乎是作为小白的话,Python的语法更加简单,学起来更快,拿来上手也更快,那么对于测试来说真的是这样吗? Python语言特点 python语言语法简单,内置了许多丰富的函数可以处理各种操作,并…
微服务测试的痛点与挑战 这张图可以形象地展示单体服务和微服务的对比,单体应用就像左边巨大的集装箱,软件模块和应用都包括其中:而微服务就像是由一个小集装箱组成,微小的服务组成一个庞大.完整的系统.单体服务是一个大而全的应用体,而微服务由拆分成出来的很多小服务来组成一个庞大而完整的系统. 微服务是一种架构模式,是面向服务型架构 SOA 的一种变体,提倡将单一应用程序逐渐还原划分成小的服务,服务间互相协调.互相配合,为用户提供最终价值.微服务架构风格就是一些小而自治的服务协同工作形成松耦合的系统.另外…
摘要:软件测试的最高层次需求是:UI测试,也就是这个软件"长得好不好看". 为了让读者更好地理解测试,我们从最基础的概念开始介绍.以一个软件的"轮回"为例,下图展示了一个软件的研发流程.随着软件规模的不断增大,一个软件动辄百万行的代码,想要单靠人工检查或者程序猿的技术本身保证质量已经变得不现实.因此,测试成为软件流程中必不可少的环节. 测试过程中会涉及不同的需求,以Mike Cohn在他的著作<Succeeding with Agile>一书中提出的&q…