Mike Cohn 提供了一个名为 Test Pyramid 的模型.这描述了软件开发所需的自 动化测试类型. 根据金字塔,第一层的测试数量应该最高.在服务层,测试次数应小于单元测试 级别,但应大于端到端级别.…
我的女朋友是一名测试工程师,但她之前却不知道测试金字塔的概念,为此我曾经在家里的白板上画了一个图一层一层给她讲解过.我和同事在给团队面试测试和开发岗位时,也会必问到这个问题,想到可能有很多开发童鞋都不知道,这里我就用一篇推文给大家科普一下. 一.传说中的金字塔 我们都知道,针对项目的测试有很多分类,比如单元测试.集成测试.组件测试.端到端测试 以及 探索性测试等.那么,测试金字塔其实就是给我们的一个指导,它指导我们要在不同类型的测试工作投入多少的精力是最合适的. 废话不多说,先上图: 测试金字塔…
spring 面试题 1.一般问题 1.1.不同版本的 spring Framework 有哪些主要功能? 1.2.什么是 spring Framework? 1.3.列举 spring Framework 的优点. 1.4.spring Framework 有哪些不同的功能? 1.5.spring Framework 中有多少个模块,它们分别是什么? 1.6.什么是 spring 配置文件?.... 1.7.spring 应用程序有哪些不同组件? 1.8.使用 springg 有哪些方式 2.…
微服务 面试题 1.您对微服务有何了解? 2.微服务架构有哪些优势? 3.微服务有哪些特点? 4.设计微服务的最佳实践是什么? 5.微服务架构如何运作? 6.微服务架构的优缺点是什么? 7.单片,SOA 和微服务架构有什么区别? 8.在使用微服务架构时,您面临哪些挑战? 9.SOA 和微服务架构之间的主要区别是什么? 10.微服务有什么特点? 11.什么是领域驱动设计? 12.为什么需要域驱动设计(DDD)? 13.什么是无所不在的语言? 14.什么是凝聚力? 15.什么是耦合? 16.什么是…
最近在担任公司部门的DevOps Champion的角色,一直觉得这个只是一个协调者的角色(而不是一个SME的角色),我的工作大概就是将每个项目的devops工具收集一下,然后用图表的形式去体现大家用devops的工具情况,再就是分享一下好的devops实践. 在我们部门里,我自己也是一个tech leader的角色,也带着两个项目在身上,我的项目可以说是部门的number one了,我们有自动化构建,部署,和部分自动化测试,在我收集的过程当中,有几个项目也说自己也都做好了自动化构建和部署,我也…
​​摘要:测试策略描述了测试工程的总体方法和目标.描述目前在进行哪一阶段的测试以及每个阶段内在进行的测试种类(功能测试.性能测试.覆盖测试等)以及测试人力安排等. 本文分享自华为云社区<浅谈敏捷开发的测试策略>,作者:敏捷江湖桃花岛梅师姐 . 前言 随着敏捷和 DevOps 的出现,改变了传统的软件开发模式,与此同时测试也面临着不小的挑战,在敏捷开发模式下,短周期迭代交付模式意味着时间变短,拥抱变化意味着变更频繁,用户故事描述需求的方式意味着文档变少,全功能团队中意味着专门的测试人员变少.基于…
Golang项目的测试实践 最近有一个项目,链路涉及了4个服务.最核心的是一个配时服务.要如何对这个项目进行测试,保证输出质量,是最近思考和实践的重点.这篇就说下最近这个实践的过程总结. 测试金字塔 按照Mike Cohn提出的"测试金字塔"概念,测试分为4个层次 最下面是单元测试,单元测试对代码进行测试.再而上是集成测试,它对一个服务的接口进行测试.继而是端到端的测试,我也称他为链路测试,它负责从一个链路的入口输入测试用例,验证输出的系统的结果.再上一层是我们最常用的UI测试,就是测…
摘要:软件测试的最高层次需求是:UI测试,也就是这个软件"长得好不好看". 为了让读者更好地理解测试,我们从最基础的概念开始介绍.以一个软件的"轮回"为例,下图展示了一个软件的研发流程.随着软件规模的不断增大,一个软件动辄百万行的代码,想要单靠人工检查或者程序猿的技术本身保证质量已经变得不现实.因此,测试成为软件流程中必不可少的环节. 测试过程中会涉及不同的需求,以Mike Cohn在他的著作<Succeeding with Agile>一书中提出的&q…
摘要:软件测试的最高层次需求是:UI测试,也就是这个软件"长得好不好看". 为了让读者更好地理解测试,我们从最基础的概念开始介绍.以一个软件的"轮回"为例,下图展示了一个软件的研发流程.随着软件规模的不断增大,一个软件动辄百万行的代码,想要单靠人工检查或者程序猿的技术本身保证质量已经变得不现实.因此,测试成为软件流程中必不可少的环节.   测试过程中会涉及不同的需求,以Mike Cohn在他的著作<Succeeding with Agile>一书中提出的…
原文地址:https://developer.android.com/training/testing/fundamentals.html 用户在不同的级别上与你的应用产生交互.从按下按钮到将信息下载到他们的设备上,因此,你应该在迭代开发应用程序时测试各种用例和交互. 使用迭代开发工作流 当你的应用程序进行扩展时,你可能会发现需要从服务器获取数据,与设备的传感器进行交互,可以还需要访问本地存储,或呈现复杂的用户界面.应用程序的多样性需要一个全面的测试策略. 在迭代开发一个新的特性时,首先需要编写…