问题标签 [servicetestcase]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3039 浏览

java - 服务测试用例.getService?

我正在尝试在 android 上构建一个有效的 junit 测试套件。

因为我是 Junit 的新手,所以我不知道如何使用 ServiceTestCase 类。

我不知道如何让 getService() 方法工作。它曾经返回我 null 。所以我决定通过 startService 启动它。这没用。

请你帮助我好吗 ?

谢谢

0 投票
2 回答
1252 浏览

android - android:junit 报告生成

我想在 android.Testcase 中运行 junit 测试用例后生成 HTml 报告,类型为 AndroidTestCase、ProviderTestCase 和 ServiceTestCase。和junit报告任务是: -

此任务正在生成空白 html 报告,请在这方面帮助我,candyDhami。

0 投票
4 回答
2707 浏览

android - AsyncTask.onPostExecute() 永远不会在 ServiceTestCase 中被调用

我正在使用 ServiceTestCase 为服务编写单元测试。

该服务基本上执行一个 AsyncTask,它做一些工作,然后在 onPostExecute() 中做一些其他事情。

当我在(虚拟)设备中运行和调试它时,该服务按预期工作。

但是在扩展 ServiceTestCase 的测试中,我只进入了 doInBackground()。一旦方法返回, onPostExecute() 就永远不会被调用。我让测试 sleep() 所以 AsyncTask 有时间完成它的工作。

这是简化的服务:

这是对它的测试:

我想 ServiceTestCase 提供的环境有些有限,所以这不起作用,但是我能做些什么让它工作吗?

干杯,托斯滕

0 投票
0 回答
955 浏览

android - 在单元测试中使用 PendingIntent 来测试服务

我有一个IntentService(实际上是一个WakefulIntentServicePendingIntent !),它使用添加到用于启动服务的意图的a 将结果返回给请求(即,来自活动) 。早些时候我使用过ResultReceiver,但发现如果设备进入睡眠状态或在处理请求时旋转,它会崩溃。

作为该服务的单元测试,我正在使用ServiceTestCase<Service>该类。使用时效果很好,ResultReceiver因为它可以添加到传递给服务的意图中。但是,ServiceTestCase不包含Activity的createPendingResult方法。

因此,我想知道测试此服务的最佳方法是什么。我应该使用 ActivityInstrumentationTestCase2 还是ActivityUnitTestCase代替我的单元测试?还是有更好的想法?

顺便说一句,我在 Android Dev 中阅读过。服务指南章节如下:

“但是,如果您希望服务发回结果,那么启动服务的客户端可以为广播创建一个 PendingIntent(使用 getBroadcast())并将其传递给启动服务的 Intent 中的服务。服务然后可以使用广播来传递结果。”

在活动中使用本地广播对IntentService我来说听起来有点矫枉过正,但我​​很乐意听到其他人对此的看法。

0 投票
3 回答
3279 浏览

android - 如何从android Junit ServiceTestCase的setUp方法上的资产中复制文件?

我正在为 android 服务实现编写 JUnit 测试代码,我必须使用复制到 sdcard 上的一些文件来初始化测试。我的班级签名是这样的:

我正在尝试使用技巧从资产中复制文件,但 getAssets() 方法需要扩展 Activity 类。

那么..我如何将文件从资产复制到 sdcard 以在 android 中设置 junit 测试?

先谢谢了。

附言:

'getSystemContext().getAssets();', 'getContext().getAssets();', 'getApplicationContext();' 返回服务项目上下文,而不是测试项目上下文。

现在我正在尝试使用 Instrumentation,但是它需要一个 Activity 并且我正在使用一个服务项目。我正在寻找如何在没有 Activity 的情况下使用 Instrumentation ...

0 投票
1 回答
4777 浏览

android - 可以Android的ServiceTestCase向我的服务发送消息?

我想用 ServiceTestCase 测试我的绑定服务。测试包括绑定到 MyBindServer 和发送消息。查看日志,您可以看到调用 onBind() 时服务已启动,并且从 testAHello() 发送了一条消息,但从未调用服务器的 handleMessage()。

从日志中:

这是 MyBindServer.java 的代码:

这是 MyBindServerTest.java 的代码:

0 投票
5 回答
5371 浏览

android - IntentService 的 Android ServiceTestCase

我目前正在为一个 android 应用程序编写单元测试,并偶然发现了以下问题:

我用ServiceTestCase来测试IntentService这样的:

但是我注意到我IntentService的被创建(意味着onCreate被调用)但我从未接到过电话onHandleIntent(Intent intent)

有没有人已经IntentServiceServiceTestCase课堂上测试过?

谢谢!

0 投票
1 回答
747 浏览

android - ServiceTestCase 空指针中的 MockContentResolver

我正在尝试以类似 TDD 的方式创建服务,为此我创建了以下测试。该服务基本上轮询 Web 服务并将新信息放入 Content Provider。由于它是一项服务,因此我正在使用内容提供程序,它将信息存储到其中作为测试的预言机。

我想我想要做的是创建一个 MockContentResolver 来实现这一点,但是在 ProviderTestCase2 类之外缺少它的示例。但是,当我运行此脚本时,它在 addProvider 行上为空指针。

有没有人有创建/访问模拟内容解析器的示例?在 ServiceTestCase 中?

0 投票
2 回答
1706 浏览

android - 无法让 Android ServiceTestCase 运行

我无法让任何扩展 ServiceTestCase 的测试用例运行。没有错误,它们只是没有执行。

其他扩展 AndroidTestCase 的测试用例会运行。

项目设置如下:

我有一个包含服务的 Android 库。它的清单文件如下:

Android 库项目在文件夹 test 中包含一个测试项目(使用 Android 工具创建)

这包含一个 AndroidManfiest.xml 如下

我在测试项目中也有一个 build.properties,其中包含:

测试.project.dir=.. android.library.reference.1=..

我通过运行 ant clean run-tests 来执行测试。

我需要做什么才能运行 ServiceTestCase 测试?

提前致谢。

0 投票
1 回答
959 浏览

android - 在 android 的 TestCase 中启动服务

如何从测试用例启动/绑定服务。我尝试使用 ServiceTestCase 它不起作用