首页 > 解决方案 > Android Studio - 单元测试模拟应用重启

问题描述

您好我想使用单元测试来查看我的数据保存结构是否正常工作问题是,我不知道如何以编程方式模拟重启。

这是一个示例单元测试。

(AppData 只是一个类,用于保存各种事物,例如具有多个条目的购物清单。)

@Test
    public void getDataAfterRestart(){
        //Save a Entry
        AppData appData = new AppData();
        appData.addShoppingEntry(new ShoppingEntry("Bread"));
        appData.save();


        //************************
        //Restart the Application*
        //************************


        //After the App reopend it self check if the Entry is still here
        int entries = appData.getShoppingEntries().size();

        assertEquals(1,entries);
}

处理此类问题有哪些好的做法?

先感谢您!

标签: javaandroidunit-testingandroid-studiorestart

解决方案


重新启动您的应用程序意味着您需要与底层 Android 操作系统进行交互以测试正确的行为。这意味着您需要编写仪器测试而不是单元测试。在 Android 中,我们使用AndroidX的测试库中提供的工具编写检测测试。在这种情况下,您可能需要使用UI Automator直接与设备交互以停止您的应用程序然后重新启动它。


推荐阅读