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的问题,并进行测试。

相关内容

热门资讯

透视透视"werpl... 透视透视"werplan脚本"hhpoker哪个俱乐部靠谱(果然真的有辅助插件)-哔哩哔哩运hhpo...
透视好牌"wepok... 透视好牌"wepoker透视有没有"wepoker私人局开挂视频(好像是有辅助平台)-哔哩哔哩1、w...
围绕透视问题"哈糖大... 围绕透视问题"哈糖大菠萝破解器"aapoker辅助器是真的吗(本来真的有辅助下载)-哔哩哔哩进入游戏...
今天下午"wepok... 您好,德州辅助工具到底怎么样这款游戏可以开挂的,确实是有挂的,需要了解加去威信【485275054】...
日前"wepoker... 日前"wepoker脚本下载"wepoker私局代打(竟然真的有辅助辅助器)-哔哩哔哩1、每一步都需...
据统计"pokern... 您好,we-poker有人玩吗这款游戏可以开挂的,确实是有挂的,需要了解加去威信【485275054...
透视讲解"wpk作必... 透视讲解"wpk作必弊是真的吗"wepoker透视app下载(真是真的是有辅助平台)-哔哩哔哩1、完...
透视能赢"aapok... 透视能赢"aapoker辅助插件工具"wpk俱乐部有没有辅助(其实是真的辅助安装)-哔哩哔哩1、这是...
现有说明如下"wep... 现有说明如下"wepoker俱乐部辅助"德普之星透视辅助插件(总是存在有辅助辅助器)-哔哩哔哩1、德...
透视安卓版"wepo... 您好,hhpoker德州牛仔视频这款游戏可以开挂的,确实是有挂的,需要了解加去威信【48527505...