- 博客(10)
- 资源 (1)
- 收藏
- 关注
原创 Espresso实现apk黑盒测试
直接上最终实践的教程吧 : 1. 新建工程 这里注意 package name必须与被测apk的包名一致 (至于如何查看apk包名,可另行查看资料) ,可以点击 Edit 编辑包名. 2. 选择无activity项目 3. 重签名文件 具体重签名方法不在文本讲述 . 签名完成后将得到的apk放置于lib目录下 ( 当然也可以是任意地方,这个位置将在
2017-03-21 17:17:12 1163 2
原创 按位异或的妙用
常常遇到这种逻辑判断 , 我从一个方法接收到结果为boolean 值 , 但我有一个预期<即希望它为true 或false > 然后针对不同的预期做相应的操作 . like this:public boolean isIdleNow(boolean exist) { boolean isIdle; List<View> views = getViews(match
2016-12-20 17:14:13 473
原创 espresso之Views获取
espresso 目前尚不能处理多个View , 不论是 onData 还是其他 , 都只能操作唯一匹配的View . 如果多个view被匹配 , 将抛出 AmbiguousViewMatcherException 这个异常 , 那么我们想循环遍历操作一组同类的views时 将变得不太现实 . 举个例子有一波 Text 相同的View , 我想全部点击一遍 , 一个个的通过复杂定位去点击 , 显然不
2016-12-09 19:37:53 717
原创 espresso之自由swipe
很多时候espresso不能自由的滑动 , 它必须在指定的View上进行 ( 当然 , view不可见的时候是不能滑动的 ) . 然而我们就是希望在屏幕上滑动一下来使某个view可见 , 一般情况很简单嘛 :onView(isRoot()).perform(swipeLeft());onView(isRoot()).perform(swipeDown());这样真的就解决了吗 , 当然 . 这样
2016-12-09 18:56:29 838
原创 十进制转十六进制
这是做数字转换时写的个小例子 官方的例子不适合用来学习.private String conversion16(int i){ char[] chars = new char[16]; char ch = 'A'; char nu = '0'; int m = 0; //商 int y = 0; //余
2016-12-02 12:14:59 306
原创 espresso之判断EditText是否为password
这一需求可能比较少见 , 但也是常见的 . 往往我们需要验证输入的密码是否屏蔽 , 这时怎么处理呢 ? 匹配是否为"********" ? 先不说是否正确 , 假设不是用 * 作为掩盖 , 而是用别的特殊字符呢? 再逐个匹配吗? 显然不尽现实 , code就是为了一劳永逸 . 这里先说说为什么不能匹配到"*******" , 因为就算用 * 作为了屏蔽 , 但 Text 的值依然是原来的字符
2016-11-04 15:17:25 517
原创 espresso之自定义Matcher
往往既定的matcher颇有局限 , 又或者本就没有适合需求的matcher . 这时候就是自定义matcher出场的时候了. 看起来高大上的自定义matcher , 实际上不过是实现了 TypeSafeMatcher 这一接口而已 . 为了简洁 ,大多直接使用内部类的方式 . 直接上代码:public static Matcher<View> withIndex(final int index
2016-11-03 16:27:39 1012
原创 国际化你的测试
对于针对不同国别的app , 将会有很多的版本 ,如en版 , cn版 ,tw版等等 这时候验证文本将变得复杂起来 , 通过文本识别对象的方式也将在不同的版本中失效Android自带的国际化方式即可解决问题 经过各种尝试 ( 反编译拿到class.jar > 引入jar包 ; 复制string.xml文件到main中的res包中 ; 等都失败了 ) 后得出: 1. 将原app的资源文件
2016-10-24 17:46:50 444
原创 espresso之异常捕获
espresso之异常捕获 当然和java的异常捕获一样嘛 , 但确实是一样, 但也是有坑的. 先大体列一下java的异常机制 这个层次图先看着 , 后面就用着了进入正题: espresso需要捕获异常无非是为了继续封装 , 或是进行特殊操作.那么如果tyr{…}catch(Exception e){} 捕获不到呢 , 有了上面的图想必你已经知道怎么处理了 . 1. per
2016-10-24 16:47:39 655
原创 blog 生涯开始
最近觉得是该写写博客了 , 以前都直接在群里发发文档 . 有朋告之兮 , 不若写成博客 , 不惑众人.一入IT深似海 , 回头省得已无岸 . 争渡 , 争渡 ...
2016-10-21 12:15:27 182
Jenkins权威指南.docx
2016-02-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人