Espresso 自动化测试(八)- SeekBar的测试
来源:互联网 发布:windows安装ruby环境 编辑:程序博客网 时间:2024/06/05 19:48
用过UiAutomator的同学其实都应该清楚,SeekBar是一个相当大的痛点,因为我们能够做到最多的就是获取到SeekBar的坐标,再来点击相应的一个坐标。那么问题来了。我根本就不知道我点击的结果,更好的来讲就是我根本没办法精确的控制SeekBar
SeekBar的设置以及获取
其实SeekBar的设置以及获取跟我们前面文章 Espresso 自动化测试(三)-获取文本内容 有很多的相似。这里我们先看看我们的app的情况。这里我们为了简便,所以还是使用上一篇文章中ListView与ViewPager的栗子。
这个就是一个简单的SeekBar
我需要设置SeekBar的进度为90(默认为100),我需要如何操作。代码如下:
public int getProgress(Matcher<View> matcher) { final int[] progress = {0}; onView(matcher).perform(new ViewAction() { @Override public Matcher<View> getConstraints() { return ViewMatchers.isAssignableFrom(SeekBar.class); } @Override public String getDescription() { return "seekbar"; } @Override public void perform(UiController uiController, View view) { SeekBar seekBar = (SeekBar)view; progress[0] = seekBar.getProgress(); } }); return progress[0];}
onView(withId(R.id.seekbar)).perform(setProgress(90));
以上就完成了SeekBar的设置了
下来我需要获取到SeekBar当前的大小,并且同TextView的SeekBar进行比较查看是否正确要如何做呢。
public int getProgress(Matcher<View> matcher) { final int[] progress = {0}; onView(matcher).perform(new ViewAction() { @Override public Matcher<View> getConstraints() { return ViewMatchers.isAssignableFrom(SeekBar.class); } @Override public String getDescription() { return "seekbar"; } @Override public void perform(UiController uiController, View view) { SeekBar seekBar = (SeekBar)view; progress[0] = seekBar.getProgress(); } }); return progress[0];}
int progress = getProgress(withId(R.id.seekbar));onView(withId(R.id.seekbarValue)).check(matches(withText(progress+"")));
结束语
Espresso 确实解决了很多UiAutomator中不能解决的问题,还有很多未发掘的内容。继续。。
0 0
- Espresso 自动化测试(八)- SeekBar的测试
- Espresso自动化测试(十三)- UiAutomator2与Espresso的结合
- Espresso 自动化测试(四)-中文字符的输入
- Espresso 自动化测试(五)- onData() 的使用
- Espresso 自动化测试的使用
- Espresso 自动化测试(一)
- Espresso 自动化测试 (六) - onData()的使用
- Espresso 自动化测试(十二) -recyclerView 以及 viewPager的使用
- Espresso:快速的Android UI自动化测试
- Espresso 自动化测试(三)-获取文本内容
- Espresso 自动化测试(九)-inRoot 使用
- Espresso 自动化测试(二)- 简单入门
- Espresso 自动化测试(十)- RecyclerView
- Android自动化测试框架---Espresso(1)
- Espresso 自动化测试(七)- Viewpager与Listview的使用
- Espresso自动化测试(十一) - IdlingResource
- Android UI自动化测试--Espresso
- Espresso UI自动化测试 一
- 2016几点工作思考
- HA主备路由模式的原理
- 天声人語 20160216 閉ざされた小窓
- 日经春秋 20160216
- narnia0
- Espresso 自动化测试(八)- SeekBar的测试
- kill命令详解
- oracle数据库出现“批处理中出现错误: ORA-00001: 违反唯一约束条件”解决方法
- 面向对象设计原则之三(里氏替换原则)-构建扩展性更好的系统
- TextView 在布局中设置最多显示多少,后面的以...表示
- AE小技巧!3个方法帮你快速实现流畅好看的相融动效
- 福利:分享给大家一个软件,可以录制gif图片
- 【SPOJ-TRANSP】Transposing is Fun【Pólya】【欧拉函数】【二进制】
- Bonjour 用法简介