浅谈测试之Espresso Java 编程技术

浅谈测试之Espresso

Espresso官网指南 Google推行的测试库,用于编写简洁、漂亮、可靠的Android UI测试。缺点是需要真机或模拟器配合测试,比较慢。 Espresso的集成 1.app的build.gradle下添加依赖 androidTestImplementation 'androidx.test:runner:1.1.0' androidTestImplementation '...
阅读全文
自动化测试之Espresso学习 Java 编程技术

自动化测试之Espresso学习

1.为了确保测试稳定性,使用前需要在开发者选项中关闭一下三个设置: 窗口动画缩放; 过度动画缩放; Animator 时长缩放; 2.如何使用: 添加必要的依赖: // dependencies 下面 androidTestImplementation 'and...
阅读全文
使用MVVM尝试开发Github客户端及对编程的一些思考 Java 编程技术

使用MVVM尝试开发Github客户端及对编程的一些思考

本文中我将尝试分享我个人 搭建个人MVVM项目 的过程中的一些心得和踩坑经历,以及在这过程中目前对 编程本质 的一些个人理解和感悟,特此分享以期讨论及学习进步。 缘由 最近在尝试搭建自己理解的 MVVM模式 的应用程序,在这近一个月中,我思考了很多,也参考了若干Github上MVVM项目源码,并从中获益匪浅。 我根据所得搭建了一个MVVM开发模式的Github客户端,并托管在了自...
阅读全文
论如何实现一个完美的Select组件 Java 编程技术

论如何实现一个完美的Select组件

下拉列表组件Select可以是前端使用频率最高的UI组件之一。正因此,原生HTML也存在这一标签。但由于对UI的较高追求及统一规范,我们往往不会去使用即不好看又不统一的原生Select标签,而是自己实现。能够写出一个“多数场景下能用”的Select组件,并没有什么难度。直到遇到一些特殊的场景,才意识到要想完成一个组件库级别的作品,并非易事。本文将会阐述在实际生产环境中因为遇到的问题,并分享Antd...
阅读全文
获取 DOM 元素的绝对位置 编程技术

获取 DOM 元素的绝对位置

本文会详述各种获取 DOM 元素绝对位置 的方法以及对应的兼容性。 关于如何获取 DOM 元素高度和滚动高度 ,请参考视口的宽高与滚动高度 一文。 概述 这些是本文涉及的 API 对应的文档和标准,供查阅: API 用途 文档 标准 ...
阅读全文
获取 DOM 元素的绝对位置 编程技术

获取 DOM 元素的绝对位置

本文会详述各种获取 DOM 元素绝对位置 的方法以及对应的兼容性。 关于如何获取 DOM 元素高度和滚动高度 ,请参考视口的宽高与滚动高度 一文。 概述 这些是本文涉及的 API 对应的文档和标准,供查阅: API 用途 文档 标准 ...
阅读全文
CALayer这些牛逼的子类你造吗_补全篇 IOS技术

CALayer这些牛逼的子类你造吗_补全篇

原文之前讲到几个常用的CALayer的子类,对对对,就是他:iOS动画篇_CALayer这些牛逼的子类你造吗。今天我们来讲其他几个吧,要不然,我不说你是不是以为我不会!!!那我们今天就从一个比较酷炫的开始:CATransformLayer我们先看一下系统有没有像之前讲过的几个子类一样,给它一些特殊的属性或者方法:@interface CATransformLayer :&nbs...
阅读全文
Effective前端6:避免页面卡顿 编程技术

Effective前端6:避免页面卡顿

什么是页面卡顿?如下: 当拖动页面或者滚动的时候页面一卡一卡的,看起来不连贯,我们就说页面卡了,这是一种非常不友好的体验,怎么衡量页面卡顿的情况呢? 1. 失帧和帧率FPS 如果你家里买了电视盒的话,在设置里面应该会有一个输出设置: 上面选中的60Hz就是帧率(frame per second),即一秒钟60帧,换句话说,一秒钟的动画是由60幅静态图片连在一起形...
阅读全文
高频dom操作和页面性能优化探索 编程技术

高频dom操作和页面性能优化探索

一、高频操作DOM会导致的问题 DOM的修改会导致 重绘 和 重构 ,重绘意味着网页样式的改变比如背景颜色、字体颜色等,重构意味着结构的改变,消耗性能要大于重绘,浏览器不会在js执行的时候更新dom,而是会把这些dom操作存放在一个队列中,在js执行完之后按顺序一次性执行完毕,因此在js执行过程中用户一直在被阻塞。 1.年会抽奖项目的高频操作DOM问题 在最近做的年会抽奖项目中,就...
阅读全文
理解 DOM 座標 编程技术

理解 DOM 座標

在瀏覽器中有兩種座標系統 & 滑鼠座標: 1. 相對於 `document` - 座標 (0, 0) 在整個頁面的最左上角。 2. 相對於 `window` - 座標 (0, 0) 在可視區 Viewport 的最左上角。 3. 滑鼠座標 - 通常透過事件取得。 當頁面還沒捲動時 window 和 document 的原點 (0, 0) 與其他座標是相同的。 開始捲動後,doc...
阅读全文
Loading...