UnitTesting Android TabActivity 时出现 Nullpointer 异常

2024-02-22

我目前正在对示例 TabLayout 进行单元测试安卓网站 http://developer.android.com/resources/tutorials/views/hello-tabwidget.html。我在进行单元测试时遇到 NullPointerException,如下所示:

public class MainActivityUnitTest extends ActivityUnitTestCase<MainActivity>{

    public MainActivityUnitTest(){
        super(MainActivity.class);      
    }

    @MediumTest
    public void testStartActivity(){
        setActivity(startActivity(new Intent(Intent.ACTION_MAIN), null, null));
    }
}

这是我得到的异常:

java.lang.NullPointerException
at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:277)
at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:654)
at android.widget.TabHost.setCurrentTab(TabHost.java:326)
at android.widget.TabHost.addTab(TabHost.java:216)
at com.foo.android.MainActivity.onCreate(MainActivity.java:55)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
at android.test.ActivityUnitTestCase.startActivity(ActivityUnitTestCase.java:159)
at com.foo.android.test.MainActivityUnitTest.testStartActivity(MainActivityUnitTest.java:17)
at java.lang.reflect.Method.invokeNative(Native Method)
at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:204)
at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:194)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154)
at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:529)
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1448)

我试图在网上搜索但没有运气。我希望以前有人解决过这样的问题。我在这里做错了什么?预先非常感谢您的协助。


我没有进行过单元测试,所以我不能肯定地说,但看起来你没有设置类和上下文startActivity intent.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

UnitTesting Android TabActivity 时出现 Nullpointer 异常 的相关文章

随机推荐

  • 使用远程代理转发时docker buildkit挂载ssh

    我用 sshdocker buildkit 功能 它在本地运行良好 我想在远程服务器上构建 Docker 为此我使用 A标记转发我的本地 github 密钥 例如 ssh i server pem A
  • WinForms 应用程序中的 Web 浏览器控件出现错误

    我正在尝试在 winforms 应用程序中使用网络浏览器控件 在我的应用程序中 当我尝试导航到在 IE 或 Chrome 中正常工作的位置时 我收到一个 脚本错误 窗口 指出 此页面上的脚本中发生了错误 与 错误 对象不支持此属性或方法 不
  • 通过 Ansible playbook 检查 Java 版本

    以下是我的剧本 hosts UAT gather facts false remote user xxxx become method sudo become yes become user sudo user tasks name Fet
  • Android Studio 0.2.9 无法创建新项目

    更新到最新的 0 2 9 版本后 我无法在 Android Studio 中创建新项目 我正在使用 OSX 并收到以下错误消息 3 字节 UTF 8 序列的字节 2 无效 检查日志后 我看到以下内容 2013 09 17 13 38 29
  • 门控签入始终将工作项与构建相关联

    我正在使用带有门控签入的 TFS2010 即使我已将 关联更改集和工作项 设置为 false 变更集和工作项仍与此构建相关联 这种情况仅发生在门控构建上 如果我使用其他签入触发器 手动 连续 计划 运行构建 则变更集和工作项不会与构建关联
  • Spring环境下,我在新项目中还应该使用Hystrix吗?

    看来Hystrix https github com Netflix Hystrix已接近生命周期结束 Netflix 堆栈现在已被弃用 我们正在为一个全新的项目构建一个堆栈 我们需要一个断路器 我们的默认选择是 Hystrix 因为它众所
  • 我的设备没有收到其他通知 (FCM)

    我迁移到 Firebase Cloud Messaging 当第一次尝试发送消息时 我使用 Firebase 中的控制台收到了一条通知 然后在几分钟后尝试发送另一个通知 但我不再收到另一个通知 但在我的 Firebase 控制台中 它说它是
  • PowerShell 如何在解析的 JSON 上添加一些内容?

    我想使用 PowerShell 在解析的 JSON 中添加一些内容 我的代码 function ConvertFromJson string file System Reflection Assembly LoadWithPartialNa
  • 通过调用计算taxAmount的方法只能得到$0

    我在执行以下调用时遇到问题 特别是最后一个组件 Console WriteLine Taxpayer 0 SSN 1 Income is 2 c Tax is 3 c i 1 taxArray i SSN taxArray i grossI
  • 如何传递 shell 命令的实时 stdout 行以在 Rust 中运行?

    我想逐行获取命令行的实时输出 并将该行传递给另一个函数以进行进一步处理 我有以下代码用于读取输出 fn output x str gt Result lt Error gt let stdout Command new strace arg
  • 使用TDB2和OWL Reasoner配置fuseki

    这里是 fusioni jena 的新手 我设法让 fusioni 使用 tdb1 与 OWLFBRuleReasoner 一起运行没有问题 但无法使其与 tdb2 一起工作 http jena apache org 2016 tdb ht
  • Angular 5 中的页眉和页脚

    我正在用 Angular 5 创建我的网站 我的网站中有主页 商店和类别页面 最初 我决定在整个网站上保持页眉和页脚全局 我的意思是创建页眉和页脚组件并将它们用作指令
  • trigger.io Android 应用程序启动图像首选项问题

    刚刚完成了我的 trigger io 应用程序的第一个版本 并在 android 和 ios 平台上成功进行了测试 trigger io v1 4 forge 工具 v3 3 11 然而 我有一个小故障 我无法更改 Android 默认的
  • Java:catch 块可以是多态的吗?

    在我要复习的一篇论文中 我被问到 catch 块可以是多态的吗 如果属实 那么对我来说调用多个就没有意义catch块多态性 是否是多态性如果catch块无法命名并且仅在其方法头中包含参数 例如 try catch FileNotFoundE
  • Heroku 指南针 buildpack 指南针失败

    我正在尝试将指南针构建包推送到heroku服务器 https github com stephanmelzer heroku buildpack nodejs grunt compass https github com stephanme
  • 如何删除 json_encode() 函数上的反斜杠?

    如何去除 字符串上的反斜杠 使用时echo json encode 例如 注意 当你 echo str 时 不会有问题 但是当你 echo out 使用json encode the 反斜杠将会出现 有办法解决这个问题吗 json enco
  • 在 MongoLab 上运行的 MongoDB 中的日期语法是什么?

    对象 ID 不是 ObjectId 82he921he982he82 而是 id oid 82he921he982he82 但我不知道如何在 MongoLab 上的文档中创建日期值 s 如果您使用其中一个驱动程序 则可以通过该语言的 Dat
  • 如何在 iOS 中引用刚刚拍摄的照片?

    我正在编写一个应用程序 允许用户拍照然后在图像视图中显示它 我知道我需要编写一行类似于以下内容的代码 imageView image picker image 但我不确定我需要用什么来代替picker image 这就是我目前所拥有的 它给
  • 我们可以强制函数在c++中内联吗

    一般来说 inline关键字只是对编译器的一个请求 编译器会根据函数的实现来决定是否进行内联扩展 但是有什么方法可以强制函数内联吗 我们该怎么做呢 这完全依赖于编译器 一些编译器提供了执行您想要的操作的方法 For gcc看一眼this h
  • UnitTesting Android TabActivity 时出现 Nullpointer 异常

    我目前正在对示例 TabLayout 进行单元测试安卓网站 http developer android com resources tutorials views hello tabwidget html 我在进行单元测试时遇到 Null