[译] 使用 Espresso 隔离测试视图】的更多相关文章

原文地址:Testing Views in Isolation with Espresso 原文作者:Ataul Munim 译文出自:掘金翻译计划 译者:yazhi1992 校对者:lovexiaov, Phoenix 使用 Espresso 隔离测试视图 在这篇文章里,我将会告诉你为何并且如何使用 Espresso 在 Android 设备上测试你的自定义视图. 你可以使用 Espresso 来一次性测试所有界面或流程.这些测试用例会启动某个页面,并像用户一般执行操作,包括等待数据的加载或跳…
0.进程中的概念 三状态:就绪.运行.阻塞 就绪(Ready):当进程已分配到除CPU以外的所有必要资源,只要获得处理机便可立即执行,这时的进程状态成为就绪状态. 执行/运行(Running)状态:当进程已获得处理机,其程序正在处理机上执行,此时的进程状态成为执行状态. 阻塞(Blocked)状态正在执行的进程,由于等待某个事件发生而无法执行时,便放弃处理机而处于阻塞状态.引起进程阻塞的事件可有多种,例如,等待I/O完成.申请缓冲区不能满足.等待信件(信号)等. 同步:一个任务的完成需要依赖另外…
[译]Vulkan教程(28)Image视图和采样器 Image view and sampler - Image视图和采样器 In this chapter we're going to create two more resources that are needed for the graphics pipeline to sample an image. The first resource is one that we've already seen before while work…
Django 测试客户端 self.client.get(url)  测试客户端是Django中TestCase类的一个属性名. 至此已经在网站中可以创建一个清单了. 那么,现在是可以在unit test中测试新建的清单了 为新建清单添加了一个视图函数,并映射给了url ‘^/Lists/new$'. 在哪里使用它呢? 在首页的新建清单 form的Action中指定这个url. 目前的实现是: 1. get 首页,打开首页.能看到 输入待办事项的清单. 2. post 首页,可以创建一个list…
在单元测试(Unit Test)中我们遇到的问题之一是:假如被测试组件(类或项目)为A,组件A依赖于组件B,那么在组件A的单元测试ATest中测试A时,也需要依赖于B,在B发生改动后,就可能影响到A的测试结果.为了在测试A时隔离B对A的影响,这就是Microsoft Fakes要解决的问题. 解决上面的问题,Microsoft Fakes采用的方法是用将组件B用stubs或shims替换. 参看:http://msdn.microsoft.com/library/vstudio/hh549175…
UI测试在Android平台上一直都是一个令人头痛的事情, 由于大家平时用的很少, 加之很多文档的缺失, 如果很多东西从头摸索,势必踩坑无数. 自Android24正式淘汰掉了InstrumentationTestCase(位于android.test包), 推出Espresso(位于android.support.test包), Google一直致力于降低UI测试的门槛. 了解测试金字塔的同学可能知道,UI测试属于功能测试(Functional Test), 或者按照其他的划分也属于集成测试(…
转自:http://juvenshun.iteye.com/blog/206825 Maven能够帮我们很好的管理测试,我们可以在 src/test/java 和 src/test/resources 下面使用JUnit或者TestNG 编写单元测试和集成测试,然后在命令行运行 mvn test ,测试就会自动运行,同时产生详细的测试报告.对只有一两个人的项目来说,不会碰到本文将提到的问题. 我们考虑以下场景(这也是我在实际项目中碰到的问题):有一个大概30人团队的项目,其中一半在美国,另一半在…
◄上一篇 (Nested States & Nested Views)     下一篇 (URL Routing) ► 你可以给你的视图命名,以便可以在单个模版当中拥有一个以上的 ui-view .比如说,你有一个应用需要动态生成图表,一些表的数据和过滤条件如图所示: You can name your views so that you can have more than one ui-view per template. Let's say you had an application s…
--建立用户分配权限 create user groper identified by groper / grant connect,resource to groper / grant create synonym to groper / --赋予视图权限 begin grant select on FYBJY.V_LQT_DIAGNOSIS to groper; grant select on FYBJY.V_LQT_DIC_DEPT to groper; grant select on F…
原文地址:Testing Views in Isolation with Espresso 原文作者:Ataul Munim 译文出自:掘金翻译计划 译者:yazhi1992 校对者:lovexiaov, Phoenix 使用 Espresso 隔离测试视图 在这篇文章里,我将会告诉你为何并且如何使用 Espresso 在 Android 设备上测试你的自定义视图. 你可以使用 Espresso 来一次性测试所有界面或流程.这些测试用例会启动某个页面,并像用户一般执行操作,包括等待数据的加载或跳…
◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/5604642.html 前言 首先还是老规矩,看看官方文档吧.为了防止我读完后再写遗漏什么,因此直接把我翻译的也写出来. 官方原文参考地址:https://developer.android.com/topic/libraries/testing-support-library/index.html#Espresso Espresso译文 Espresso提…
◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/5997557.html 前言 Espresso的提供了不少API支持使用者来和界面元素进行交互,但同时它又阻止使用者直接获取Activity和View,它为的就是想保持让这些对象在UI线程中执行,以防发生线程不安全的情况.因此在Espresso中我们看不到getView.getCurrentActivity类似这样的方法.但是我们可以通过实行自己的ViewA…
c#Winform程序调用app.config文件配置数据库连接字符串 你新建winform项目的时候,会有一个app.config的配置文件,写在里面的<connectionStrings name="  " connectionString="  "></connectionStrings >, connectionString代表数据库链接字符串,name代表你想要引用的时候查找的名称.(其实asp里的web.config配置方式也跟这…
你应该开始编写和启动测试作为你的android程序开发周期的一部分.写的好的测试能够帮助你更早的发现bug和使你对你的代码有信心. 一个测试用例定义了一些对象和方法的集合,用于启动多样的彼此独立的测试.测试用例可以被组织进测试套件内和启动编程,以一个可重复的规则,测试框架提供了测试启动的方式. 这节课将会教你如何使用android的自定义测试框架(基于流行的Junit框架).你可以编写你的测试用例来验证你程序里的指定行为,和检查在不同的android设备中的一致性表现.你的测试用例也可以作为一种…
下载source - 1.7 MB 介绍 本文解决了返回视图内容包含表单元素的部分视图的问题. 代码重用是一种非常有用的节省时间的特性,任何优秀的工程师都会在他们的工作过程中构建许多有用的函数.对于Web应用程序来说,反复使用相同的代码是一种常识.然而,在这个例子中,我们也有HTML标记代码.ASP.NET MVC有部分视图.子操作和编辑/显示模板来解决这个问题.部分视图可以使用页面模型作为它们的数据,而子操作则使用来自控制器的独立数据.编辑器/显示模板将项目从模型传递到系统,但是可以被用户部分…
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 8-8  测试领域对象 问题 你想为领域对象创建单元测试. 这主要用于,测试特定的数据访问功能. 解决方案 对于这个解决方案,使用POCO模板来创建你的实体.使用POC模板能减少你需要编写的代码量,还能让你的解决方案非常清晰.当然,在解决方案中,你将运用手工创建的POCO类和下面的步骤. 假设你有如图8-9所示的模型. 图8-9. 一个包含reservation.schedule和train…
http://www.cnblogs.com/dkblog/archive/2013/06/14/3135914.html推荐 本人买的时候,京东打8.5折,现在降价啦,本书涵盖啦Django.Selenium.Git.jQuery和Mock的基础知识,以及其他Web开发技术.深入分析啦TDD流程,包括“单元测试/编写代码”循环和重构:使用单元测试检查类和函数,使用功能测试检查浏览器中的用户交互:学习何时及使用模拟对象,及隔离测试和整合测试的优缺点:使用持续集成环境自动运行测试.…
一.问题描述 当对视图使用的基表进行表结构修改后,会触发视图的无效以及编译出错问题,必须重建视图解决. 二.问题再现 1.Oracle10g环境 1.1 创建视图测试用两张基表:TestTable和TestUser 1.2  创建测试视图VW_TABLEUSERALL和VW_TABLEUSER 前者使用了TestTable.*, 后者显示指定列. 查询视图的状态如下:全部是Valid状态 1.3 修改TestTable表结构:增加一列Col1 再次查询视图的状态如下:全部是INVALID状态  …
虽然在上一篇文章中我们知道通过控制器可以在浏览器输出HTML页面,但是这不是控制器主要干的事,因为页面上我为还要做很多好看的特效,页面展示的事情当然交给视图来做了:下面我们就来看看如何添加一个视图 添加视图 只需要在Index方法中右击,选择 "添加视图"菜单项,然后再添加视图窗口中,你不需要做任何修改,直接点击“添加”,就可以看到VS自动为我们生成了Index视图(你可以在解决方案中的Views文件夹下找到它Index.cshtml,他就藏在HelloWorld文件夹下)…
一.涉及内容 1.理解索引的概念和类型. 2.掌握创建索引的命令. 3.理解视图的概念和优点. 4.理解可更新视图应具备的特点. 5.掌握创建一般视图和可更新视图的命令. 6.理解序列和同义词的概念和作用. 7.掌握序列的创建与应用. 8.掌握同义词的创建与应用. 二.具体操作 ( 实验) 1.在数据库中创建Student表,包括学号Id.姓名Name.性别Sex.班级编号Class_id.利用该表创建如下索引: (1)在Id字段上创建唯一的B树索引. (2)在Name字段上创建普通的B树索引.…
前文中所提到的测试都是针对一个方法进行的独立测试,即使是同事测试多个方法,他们之间也没有影响.但是在实际的生产过程中,更多的情况是方法与方法之间是存在相互的逻辑关系的,所以也就有了今天要介绍的顺序测试. 顺序测试,顾名思义,就是按照预先设定的顺序来测试一系列的方法. 首先还是展示一下要进行测试的代码 public class Mathmatics { public static int Add( int a, int b) { return a + b; } public static int…
Angular作为目前最为流行的前端框架,受到了前端开发者的普遍欢迎.不论是初学Angular的新手,还是有一定Angular开发经验的开发者,了解本文中的12个经典面试问题,都将会是一个深入了解和学习Angular 2的知识概念的绝佳途径. 在文中,我们将会接触到很多Angular 2的重要概念,并附扩展阅读资料和自查小测试,供大家评估自己对Angular的了解程度. Angular 经典面试问题及扩展阅读 1.  请解释Angular 2应用程序的生命周期hooks是什么? Angular…
欢迎大家前往腾讯云社区,获取更多腾讯海量技术实践干货哦~ Espresso是一个Google官方提供的Android应用UI自动化测试框架.Google希望,当Android的开发者利用Espresso写完测试用例后,能一边看着测试用例自动执行,一边享受一杯香醇Espresso(浓咖啡).Espress有3个特点: 第一个收录在Android Testing Supporting Library底下的测试框架 模拟用户的操作 自动等待,直到UI线程Idle,才会执行测试代码 接下来,将从配置.写…
原文:https://developer.android.com/training/testing/index.html 测试你的App是开发过程中的重要组成部分.通过对应用程序持续的运行测试,你可以验证程序的正确性.功能和可用在发布之前. 测试还提供了以下优点: 快速反馈失败. 开发周期的早期问题检测. 安全地重构代码,让你优化代码而不用担心回归. 稳定开发速度,帮助你减少技术债务. 这里的特指测试通过代码实现的"单元"测试.所以,它可以更早.更快的帮我们发现问题,使我们的代码重构更…
什么是Mock 当对代码进行测试的时候, 我们经常需要用到一些模拟(mock)技术. 绿色的是需要被测试的类, 黄色是它的依赖项, 灰色的无关的类 在一个项目里, 我们经常需要把某一部分程序独立出来以便我们可以对这部分进行测试. 这就要求我们不要考虑项目其余部分的复杂性, 我们只想关注需要被测试的那部分. 这里就需要用到模拟(Mock)技术. 因为, 请仔细看. 我们想要隔离测试的这部分代码对外部有一个或者多个依赖. 所以编写测试代码的时候, 我们需要提供这些依赖. 而针对隔离测试, 并不应该使…
有时候不是我们不想做单元测试, 而是这代码写的实在是没法测试.... 举个例子, 如果一辆汽车在产出后没完成测试, 那么没人敢去驾驶它. 代码也是一样的, 如果项目未能进行该做的测试, 那么客户就不敢去使用它, 即使使用了也会遇到“车祸”. 为什么要测试/测试的好处 它可以尽早发现bug, 解决bug 它会节省开发和维护一个软件的总成本. 实际上我们在维护软件上付出的成本要远大于在开发时付出的成本. 开发的时候编写单元测试确实会增加一些成本, 但是从长远来看这些测试还是会从维护上降低软件的总成本…
该系列第1篇: 讲述了如何创造"缝".  "缝"(seam)是需要知道的概念. 本文是第2篇, 介绍的是如何避免在构建对象时写出不易测试的代码. 本文的概念性内容大部分都来自Misko Hevery的这篇博客文章. 构建 还是用上文里汽车的例子. 通常情况下, 我们是先去建造汽车, 组装好汽车后, 我们再去驾驶它. 软件开发也类似, 我们应该把对象构造完毕之后, 再去用它. 但是有时候, 开发者会在构造过程中添加一些程序逻辑. 这就相当于车还没造完, 我们就驾驶它去…
第1篇: 讲述了如何创造"缝".  "缝"(seam)是需要知道的概念. 第2篇, 避免在构建对象时写出不易测试的代码. 第3篇, 依赖项和迪米特法则. 本文是第4篇, 将介绍全局状态引起的问题. 全局状态 全局状态, 也可以叫做应用程序状态, 它是一组变量, 这些变量维护着应用程序的高级状态. 在程序里, 全局状态可能都存放在一个全局状态对象里, 例如ASP.NET里面的HttpContext; 或者它们可能是全局的变量, 这些全局变量在程序的任何地方都可以访问.…
Angular作为目前最为流行的前端框架,受到了前端开发者的普遍欢迎.不论是初学Angular的新手,还是有一定Angular开发经验的开发者,了解本文中的12个经典面试问题,都将会是一个深入了解和学习Angular 2的知识概念的绝佳途径. 在文中,我们将会接触到很多Angular 2的重要概念,并附扩展阅读资料和自查小测试,供大家评估自己对Angular的了解程度. Angular 经典问题及扩展阅读 1.  请解释Angular 2应用程序的生命周期hooks是什么? Angular 2组…
原文:https://developer.android.com/training/testing/index.html 测试你的App是开发过程中的重要组成部分.通过对应用程序持续的运行测试,你可以验证程序的正确性.功能和可用在发布之前. 测试还提供了以下优点: 快速反馈失败. 开发周期的早期问题检测. 安全地重构代码,让你优化代码而不用担心回归. 稳定开发速度,帮助你减少技术债务. 这里的特指测试通过代码实现的"单元"测试.所以,它可以更早.更快的帮我们发现问题,使我们的代码重构更…