Android测试教程(14):ActivityInstrumentationTestCase2示例
2012-05-25 08:10
369 查看
ActivityInstrumentationTestCase2 用来测试单个的Activity,被测试的Activity可以使用InstrumentationTestCase.launchActivity 来启动,然后你能够直接操作被测试的Activity。
ActivityInstrumentationTestCase2 也支持:
可以在UI线程中运行测试方法.
可以注入Intent对象到被测试的Activity中
ActivityInstrumentationTestCase2 取代之前的ActivityInstrumentationTestCase ,新的测试应该使用ActivityInstrumentationTestCase2作为基类。
Focus2ActivityTest 的代码如下,用于测试Android ApiDemos示例解析(116):Views->Focus->2. Horizontal
ActivityInstrumentationTestCase2 也支持:
可以在UI线程中运行测试方法.
可以注入Intent对象到被测试的Activity中
ActivityInstrumentationTestCase2 取代之前的ActivityInstrumentationTestCase ,新的测试应该使用ActivityInstrumentationTestCase2作为基类。
Focus2ActivityTest 的代码如下,用于测试Android ApiDemos示例解析(116):Views->Focus->2. Horizontal
public class Focus2ActivityTest extends ActivityInstrumentationTestCase2<Focus2> { private Button mLeftButton; private Button mCenterButton; private Button mRightButton; public Focus2ActivityTest() { super("com.example.android.apis", Focus2.class); } @Override protected void setUp() throws Exception { super.setUp(); final Focus2 a = getActivity(); mLeftButton = (Button) a.findViewById(R.id.leftButton); mCenterButton = (Button) a.findViewById(R.id.centerButton); mRightButton = (Button) a.findViewById(R.id.rightButton); } @MediumTest public void testPreconditions() { assertTrue("center button should be right of left button", mLeftButton.getRight() < mCenterButton.getLeft()); assertTrue("right button should be right of center button", mCenterButton.getRight() < mRightButton.getLeft()); assertTrue("left button should be focused", mLeftButton.isFocused()); } @MediumTest public void testGoingRightFromLeftButtonJumpsOverCenterToRight() { sendKeys(KeyEvent.KEYCODE_DPAD_RIGHT); assertTrue("right button should be focused", mRightButton.isFocused()); } @MediumTest public void testGoingLeftFromRightButtonGoesToCenter() { getActivity().runOnUiThread(new Runnable() { public void run() { mRightButton.requestFocus(); } }); // wait for the request to go through getInstrumentation().waitForIdleSync(); assertTrue(mRightButton.isFocused()); sendKeys(KeyEvent.KEYCODE_DPAD_LEFT); assertTrue("center button should be focused", mCenterButton.isFocused()); } }
相关文章推荐
- ROS学习(基于Ubuntu 15.04 和ROS Jade)第三章 ROS核心教程 之 14 测试简单的Service和Client
- Android测试教程11--Mock之mockito,异步测试
- Android游戏引擎libgdx使用教程14:TiledMap中视角完善与障碍物处理
- Android自动化压力测试图解教程——Monkey工具
- Android测试教程(7):测试Content Provider
- Android测试官方教程翻译(二)--构建本地单元测试
- Android初级教程理论知识(第三章测试&数据存储&界面展现)
- Android测试教程4--定点测试
- 史上最全Android开发资料:资源、UI、函数库、测试、构建全套教程
- Android开发教程:蓝牙测试
- Android测试教程8--测试我们的Activity-第1篇
- Android测试教程(2):测试基础
- Android测试教程1--跑起来
- Android测试教程(9):ApplicationTestCase示例
- Android初级教程理论知识(第三章测试&数据存储&界面展现)
- Android测试教程9--聊聊配置测试环境的一些问题
- Android测试教程 Mock之mockito,异步测试
- Android自动化压力测试图解教程——Monkey工具
- 史上最全Android开发资料:资源、UI、函数库、测试、构建全套教程
- Android自动化压力测试快速入门教程(图解)——MonkeyRunner