Android 使用单元测试中的pendingent测试服务

Android 使用单元测试中的pendingent测试服务,android,unit-testing,service,android-pendingintent,servicetestcase,Android,Unit Testing,Service,Android Pendingintent,Servicetestcase,我有一个IntentService(实际上是一个!),它使用添加到用于启动服务的intent中的pendingent将结果返回给请求(即来自活动)。早些时候,我使用了ResultReceiver,但发现在处理请求时,如果设备进入睡眠状态或旋转,它会崩溃 作为此服务的单元测试,我使用ServiceTestCase类。这在使用ResultReceiver时效果很好,因为它可以添加到传递给服务的意图中。但是,ServiceTestCase不包含活动的CreatePendingreult方法 因此,我想

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

作为此服务的单元测试,我使用
ServiceTestCase
类。这在使用
ResultReceiver
时效果很好,因为它可以添加到传递给服务的意图中。但是,
ServiceTestCase
不包含活动的
CreatePendingreult
方法

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

顺便说一句,我在Android开发指南的服务章节中读到了以下内容:

但是,如果希望服务返回结果,则启动服务的客户端可以使用getBroadcast()为广播创建一个PendingEvent,并按照启动服务的目的将其传递给服务。然后,服务可以使用广播传递结果

对我来说,将广播用于当地活动的
IntentService
听起来有些过分,但我很乐意听到其他人对此的意见