您的位置:首页 > 移动开发 > Android开发

Robolectric进行Android单元测试

2014-02-26 00:00 274 查看

Robolectric进行Android单元测试

测试驱动android开发

在安卓模拟器或者真机上跑测试用例速度很慢。构建、部署、启动app,通常需要花费一分钟或者更久。这不是TDD(测试驱动开发)模式.Robolectric提供一种更好的方式。

可能你一直尝试在java IDE中使用junit或者testng直接跑测试用例,但是一直报
java.lang.RuntimeException: Stub!
异常。

这个异常是因为在jdk中没有android运行环境。而现在Robolectric这款android单元测试工具,模拟了android sdk中的jar包,可以直接在jvm中运行测试用例,这样就大大节省了时间。一个Robolectric测试用例如下:

// Test class for MyActivity    @RunWith(RobolectricTestRunner.class)    public class MyActivityTest {    @Test    public void clickingButton_shouldChangeResultsViewText() throws Exception {    Activity activity = Robolectric.buildActivity(MyActivity.class).create().get();    Button pressMeButton = (Button) activity.findViewById(R.id.press_me_button);    TextView results = (TextView) activity.findViewById(R.id.results_text_view);    pressMeButton.performClick();    String resultsText = results.getText().toString();    assertThat(resultsText, equalTo("Testing Android Rocks!"));    }    }


SDK,Resource和Native Method模拟

继续阅读→

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: