AndroidStudio中Robolectric测试中ActivityBundle对象为null,是否测试过早?
创始人
2024-08-21 02:00:23
0

在进行Robolectric测试时,我们可能会遇到Activity中的Bundle对象为null的情况,这通常是由于测试过早所致。解决这个问题的方法是使用Robolectric提供的ActivityController来创建Activity并调用其onCreate()方法,然后再设置Bundle。以下是一个示例:

@RunWith(RobolectricTestRunner.class)
public class MainActivityTest {
    private MainActivity mActivity;
    private Bundle mBundle;

    @Before
    public void setUp() throws Exception {
        mBundle = new Bundle();
        mBundle.putString("key", "value");
        mActivity = Robolectric.buildActivity(MainActivity.class).create(mBundle).get();
    }

    @Test
    public void testActivityNotNull() throws Exception {
        assertNotNull(mActivity);
    }

    @Test
    public void testActivityBundleNotNull() throws Exception {
        assertNotNull(mActivity.getIntent().getExtras());
    }
}

这里我们使用了@Before注释,它用来指定在执行每个测试方法之前都要调用setUp()方法。在setUp方法中,我们使用Robolectric的ActivityController来创建MainActivity并将Bundle设置为其参数。然后,我们在测试方法中验证Activity和Bundle对象是否为null。这样就可以避免Bundle对象为null的问题,并进行测试。

相关内容

热门资讯

教你透视!wepoker代打辅... 教你透视!wepoker代打辅助机器人,微乐家乡官方app,项目教程(有挂透明挂)-哔哩哔哩1、用户...
科普透视!德州局怎么透视,淘宝... 科普透视!德州局怎么透视,淘宝的微乐辅助是真的吗,演示教程(真的有挂)-哔哩哔哩1、这是跨平台的德州...
揭幕透视!德州局透视脚本,微乐... 揭幕透视!德州局透视脚本,微乐小程序辅助开发,资料教程(有挂存在)-哔哩哔哩1、上手简单,内置详细流...
教你透视!德普之星辅助器app... 教你透视!德普之星辅助器app,陕西微乐小程序辅助,窍要教程(有挂工具)-哔哩哔哩1、德普之星辅助器...
了解透视!wepoker科技辅... 了解透视!wepoker科技辅助器,微乐春天扑克开挂辅助插件,绝活教程(有挂方针)-哔哩哔哩1、不需...
辅助透视!werplan免费挂... 辅助透视!werplan免费挂下载,陕西微乐小程序脚本,手段教程(有挂技巧)-哔哩哔哩进入游戏-大厅...
专业透视!wejoker免费脚... 专业透视!wejoker免费脚本,微信小程序微乐家乡辅助器,经验教程(有挂详细)-哔哩哔哩wejok...
总结透视!wepoker数据分... 总结透视!wepoker数据分析工具,微乐自建房辅助软件有哪些功能,方案教程(有挂细节)-哔哩哔哩1...
普及透视!aapoker插件下... 普及透视!aapoker插件下载,微信小程序微乐辅助器下载,技法教程(有挂透视)-哔哩哔哩aapok...
揭幕透视!wepoker网页版... 揭幕透视!wepoker网页版透视方法,微乐自建房辅助可信吗,技法教程(有挂助手)-哔哩哔哩一、we...